Created by Nathan Chan on September 7, 2000
[What You'll Need | Setting Up Exceed | Finding Your IP Address | Configuring UNIX machines | Internet Sharing/Firewalls]
A lot of people have asked me about running tools like max and sue on their computers at home. In the past, we never really advocated such use because you will get more out of the lab if you actually work in 353 Cory during your section time. Your TA will be able to answer any questions you have when you're actually working on the lab assignment in class. Secondly, it wasn't really feasible before because off-campus connections were often slow, but with the proliferation of broadband internet access such as DSL and cable modems, working from home has its advantages.
I'm assuming most people on campus use Windows-based machines, so this document is written with that fact in mind. If you find any errors in this document or if something doesn't work, please email me at npchan@bwrc.eecs.berkeley.edu.
Having taken this class exactly a year ago, I know that spending three hours in the lab is a real pain at times. In fact, sometimes I'm sure some of you feel like you don't want to show up. Well, here's a hint. A lot of the labs are actually pretty easy to do and you can get a lot of it done on your own time, meaning that when you go to lab you'll be mostly done and all you'll have to do is show up so that your TA can take attendance and print/turn in the assignments. You can finish up any parts you feel you don't understand with the help of your lab TA and your peers. In addition, you'll find that during project time, 353 Cory might be more crowded than Times Square in New York. Working outside of the lab might actually help you get stuff done.....but that's not always true depending on how you work.
Fast Internet Connection - Believe me, you don't want to try this on a 56K modem.
DSL - Pacific Bell | Earthlink | Flashcom
Cable Modem - AT&T @Home
Ethernet (If you're living on campus dorms that offer high speed access)
Exceed Software - Download it on campus for free!
Version 6.2 for Windows 9X
Version 6.2 for Windows NT/2000
SSH Software - There are a few free versions floating on campus.
The machines in 353 Cory are really like any other Windows machine. The only difference is that it has a much faster connection to quasar, making it seem as if you're running everything locally. It is important to understand that every graphical program of any sort on any UNIX machine cannot be run locally on non-UNIX machines. What we're really doing is running everything on quasar and telling the server to send all the output to your Windows machine. To do that, you need to have an "XWindows server" installed and loaded up on your machine. This is what Exceed is - it's an Xserver for Windows platforms.
Therefore the first thing you'll have to do is install Exceed using a Typical Install. When it's done installing, it will probably ask you if you want to "Tune the XServer". Sure why not. I always do it, though I'm not sure exactly what it's doing or how it affects what we're doing. You'll probably have to restart Windows when it's done installing.
When you do that and restart your computer like it asks, you're ready to configure Exceed.
Start up the Xserver. (Translation: Open up
Exceed)

Open up the Exceed Configuration window by right clicking on
the Exceed box on your Windows Taskbar.

Your configuration window will look something like this...

First thing we need to change is the contents of the Screen
Definition. There are three panels within Screen Definition.
But you only care about the one that says Screen 0. Make sure yours
looks like the following! Note the change under "Auto Load
XRDB".

The other change that I usually make that hasn't put me
through a lot of trouble so far is under Performance.

The basic setup of Exceed is now complete. You will probably need to restart Exceed to have the changes take effect.
You need to know what your IP address is. There are two basic ways to do this, and it depends whether or not you are running Windows 9X or Windows NT.
If you are running Windows 9X:
Go to Start -> Run
In the text box, type: winipcfg
It will look something like the following image. You
might have to select your Ethernet adaptor to obtain the correct IP
address. That is, you don't want to be looking at the IP address for
your Dial-up adaptor. In this case, my IP address, as it shows
is: 209.233.26.23

If you are running Windows NT/2000:
Go to Start -> Run
In the text box, type: command
There should be a new window that opens up, allowing you to type console commands like in UNIX, except that this is the Windows Command Prompt.
Hopefully, if Windows is fully installed on your system, you
should able to type: ipconfig
As you can see, my IP address is also listed below.

You need to tell quasar or whatever UNIX machine you login at to set the DISPLAY environment variable to reflect your machine's IP address. Finding the IP address of the machine you are on can be difficult, and if you're in the lab you probably won't have to worry about it. But if you're at home, I would suggest running either ipconfig or winipcfg to find out.
Login to quasar or cory using your favorite SSH program. They're all the same to me, and all that's important is that you can type stuff into the UNIX prompt.
At the UNIX prompt, type: setenv
DISPLAY xx.xx.xx.xx:0.0, where you replace xx.xx.xx.xx with your
own IP address. Here's an example of how I would do it.

Now, you can run any graphical program on your machine simply as you would in the lab!
The above setup procedure works only if you are not behind a firewall. What does this mean? It means that you're either sharing your Internet connection at home with a bunch of your roommates and you each don't have separate IP address. As a result, someone in your house/apartment needs to run some sort of special software or have a piece of hardware installed that creates a private network that allows you all to get online. This software will create private IP addresses in your home network that the rest of the Internet can't see.
Why is this a problem? Because if you're sharing an internet connection, you all have the same IP address looking from the outside world. As a result, quasar won't know which computer to send the output to since you all "look the same."
If you are behind a firewall or private router, you'll need to have what they call Port Forwarding in order to get quasar to display to your private machine. In technical terms, quasar will send data to your IP address with a specified port number (standard for X protocol). You need to configure your software/hardware router to forward packets with that special port number to your internet (private) IP address.
So in a real nutshell, this is sort of what you need to do:
Configure your hardware/software router to forward all data destined for port 6000 to your own private IP address. The reason for this is because Exceed is fixed to "listen" at port 6000.
Perform the procedure above and pray that it works!