Difference between revisions of "X-Win 32"

From PrattWiki
Jump to navigation Jump to search
 
Line 1: Line 1:
{{Software
+
'''Note:''' As of Fall 2016, OIT is no longer providing X-Win 32; Windows users should use [[MobaXterm]] instead.
|name=X-Win 32
 
|byline=X-Windows emulator for Windows
 
|image=
 
|caption=
 
|version=X-Win 32 2014
 
|dlocation=[https://oit.duke.edu/comp-print/software/license/detail.php?id=119 OIT]
 
|cost=Free
 
|manufacturer=StarNet
 
|webpage=
 
|label_color=
 
|value_color=
 
|update=8/23/2014
 
|}}
 
 
 
'''X-Win 32''' is a program that will allow you to receive and display X-Windows information from other computers.  It is especially useful for doing work from your dorm room (or Krzyzewskiville) when the program you need to run lives on OIT's cluster system.  As of Fall 2014, most students using Windows will use [[MobaXterm]] instead.
 
 
 
 
 
__TOC__
 
 
 
==Requirements==
 
You must be using a Windows-based PC.  You will also need some form of terminal program (for example, [[PuTTY]], [[SSH|SSH Secure Shell]], or [[FSecure]]).  Note that while there are several different ways of using X-Win to connect, the method given below in Configuration and Use is...useful...in that it will not only work on campus but also over internet connections not at Duke.  It is therefore the configuration recommended to Pratt students.  Note, however, that off-campus students will experience a slower connection than those on-campus.
 
 
 
==Licensing==
 
Versions prior to X-Win 2011 are no longer supported; if you are using a version prior to X-Win 2011, you should download the latest version and install it.  There is a PDF file that is a part of the files you can download from OIT when installing the software.  The PDF file explains how to get X-Win licensed.  '''Note:''' if you are off-campus, you ''must'' use the Activation License and ''not'' the License Server.  Go to the last page of the instructions.  Anecdotal evidence suggest that the Activation License option is generally a better bet anyway.
 
 
 
<!--
 
===Licensing 2008-2010===
 
Since Spring of 2008 and through Fall of 2010, only Version 9.X is available and licensed for Duke students from the OIT site.  All previous configurations for X-Win have thus been removed from this site. 
 
 
 
To begin, you should download the program from the [http://www.oit.duke.edu/comp-print/software/license/detail.php?id=119 OIT site] and install. 
 
 
 
The first time you run it, the program will "Welcome" you.  As nice a thought as that is, go ahead and select "Don't show this again" and hit the close button. 
 
Then, you will need to enter the most current license key, which is included in the text file Key.rtf in the download. 
 
 
 
* If X-Win does ask for this, you will be entering a Floating Node license.  The license should be [[User:DukeEgr93/key|floating node]].
 
* If X-Win does not ask for this itself, it is likely using an older license.  Go to the X-Win icon in the lower right of the task bar, right-click, go to Support, and then Licenses.  Click the Add button, and when asked, copy and paste the text from the Key.rtf file into the window.  When you get back to the License Monitor, select the license that is in use and it should state that the license is good for a while.  Then close that window.
 
-->
 
 
 
==Configuration and Use==
 
Once the license is in, you will generally want to:
 
#Open X-Win32.
 
#Cancel out of the Welcome screen if you didn't banish it earlier.
 
#Open a terminal window using [[PuTTY]], [[SSH|SSH Secure Shell]] or [[FSecure]]. For the host, choose one of the machines you added to the security list in the step above.
 
##If you are using [[PuTTY]], make sure that you checked the '''Connection->SSH->X11''Enable X11 forwarding'' ''' or '''Connection->SSH->Tunnels ''Enable X11 forwarding'' ''' box before connecting.  If you did, you do ''not'' have to use the '''setenv''' command to set the DISPLAY environment.
 
##If you are using a terminal program that does not allow automatic port forwarding, once you are connected in the terminal window, type '''setenv DISPLAY $REMOTEHOST\:0.0''' - this should tell the oit computer you are on to send information to your computer.  '''''NOTE''''' this step will not work correctly if you are using a router. See the next section for information on that!
 
#See if things are working by typing '''xterm''' (xterm opens a terminal window - it opens fast and you can close it once it works)
 
 
 
This version of X-Win defaults to allowing connections from all computers.  This may or may not be a good thing.  If you would like to restrict your screen to "trusted" computers only, right-click the X-Win icon and select X-Config.  Go to security and choose to Allow by Address "Only allow these host addresses." You will then need to add the addresses for those machines you will allow to send graphics to your screen (for example, <code>hudson11.oit.duke.edu</code>).
 
 
 
== X-Win 32 with Routers==
 
If you are using a router, your computer is likely receiving an address from that router.  The port-forwarding method above will work with a router.  If you are using [[PuTTY]] or [[FSecure]] or [[SSH]] you should be all set, even with a router.
 
 
 
If, however, you are using a terminal program that does not allow forwarding and need to use the '''setenv''' method, note that
 
the '''REMOTEHOST''' above will actually be the ''router'' and not your computer.  And unless your router has a screen (and, really, even then), sending graphics to your router will not help.  So you need to tell your router to forward all the graphical information to your particular address.  Which means the following:
 
 
 
# Figure out your local machine's address and the router address.  The easiest way to do this is:
 
##Go to Start->Run
 
##Type '''cmd''' in the Run window
 
##Type '''ipconfig''' in the command window
 
##The IP Address is your local machine's address
 
##The Default Gateway is your router's address as seen from your computer
 
#Figure out the administrative login and password for your router.  The address will generally be something like 192.168.0.1 or 192.168.1.1.  The username and password depends on the manufacturer.  It's usually something cute like nothing for the login name and '''admin''' for the password.  Unless you changed it - then you are on your own.
 
#Figure out how to forward the contents of port 6000 to your local machine address as seen from your router (probably the 192.168.something.something that showed up as the IP Address above).
 
#Follow the steps in Configuration and Use II above.
 
 
 
Note that some routers will ''release'' their addresses, especially if the power goes out or you reset the router.  Your computer may not always get the same address from the router, so if you had X-Win 32 working once and now it doesn't, do the Start->Run->cmd->ipconfig trick and make sure you are forwarding port 6000 to the correct machine.
 
 
 
==Macintosh Users==
 
X-Win 32 does not work on Macs - use the terminal program associated with [[X11]] instead.
 
 
 
==Troubleshooting==
 
<!--
 
===Restricted Network w/ 9.x===
 
If your terminal responds that you are on a restricted network, you may need to use the Nodelocked License instead of the Floating Node.  The license is available for download at the OIT site above.  To enter it:
 
# Open X-Win and right-click the icon at bottom right, go to "Support" and then "Licenses".
 
# In the license section, click the "My Licenses" group in Licenses then the "Add +" button.
 
# Chose "Nodelocked (VN)" and then enter the appropriate license.
 
# Close the various X-Win wondows, then exit X-Win by right-clicking the X-Win icon and exiting.
 
# Restart X-Win.
 
-->
 
===Display 1 or higher, instead of 0, issue ===
 
Executive summary: Restarting seems to work pretty well.  Inelegantly, but well. 
 
 
 
Meanwhile - for some people, the following works:
 
# Start X-Win 32.  Confirm for yourself that it's still saying "Display 1" or something larger by hovering over the icon at lower right (if it's 0 - problem solved!)
 
# ctrl-alt-delete, and pull up the Task List and then Processes
 
# Right-click the xwin process, and end process tree
 
# Roll over the X-Win icon at lower right to make it disappear
 
# Start X-Win 32.  Hopefully, it is Display 0 now.
 
 
 
If not, try this:
 
# Start X-Win 32.  Confirm for yourself that it's still saying "Display 1" or something larger by hovering over the icon at lower right (if it's 0 - problem solved!)
 
# ctrl-alt-delete, and pull up the Task List and then Processes
 
# Be careful at this point ''not'' to roll over the X-Win icon at lower right
 
# Re-start x-win 32.  Now roll over the X-Win icons.  One should go away, and the other will be Display 2.  Possibly even 3.
 
# Shut down and re-start your computer
 
# Once re-started, start x-win while simultaneously thinking happy thoughts...
 
 
 
If that does not work - which is to say, every time you start your machine and run X-Win 32 it comes up Display 1 - there ''is'' an answer:
 
# Start X-Win 32.  Confirm for yourself that it's still saying "Display 1" - if the number is higher, restart your computer and see if it is 1 the next time around.
 
# Start PuTTY.  Load you favorite session, but do not connect.  In categories, go to X11 if it exists or Tunneling if not.
 
# In the ''X display location'', enter <source lang="text">:1.0</source>that is, "colon one point zero" - note, if you aren't getting Display 1 when you start up, change the ''1'' to whatever you are getting.
 
# Double-check to make sure the X11 Forwarding is still checked.
 
# In PuTTY, go to the Sessions category and save this session.
 
# Double click the name of the session.
 
Also - if you need to use this last type, send Dr. G an e-mail with your name, kind and model of computer, operating system and bit type.
 
 
 
===xterm works; MATLAB crashes===
 
Sometimes, MATLAB needs a buddy, apparently...  If xterm works but MATLAB crashes the X11 connection-
 
#Restart X-Win 32; MATLAB probably took it out when it crashed
 
#Type <code>xterm &</code> to get an xterm running.  Do '''not''' close it.
 
#Type <code>matlab &</code>.  Secure that its friend xterm will be along for the ride, MATLAB should now work
 
 
 
<!--
 
===152.16 Only===
 
If X-Win reports that it can only accept connections from 152.16, you need to use the other license value in the license file.
 
# Open X-Win
 
# Open xconfig (right-click X icon and select xconfig)
 
# Select the license tab
 
# If you still have the downloaded zip file from OIT, open it and open the license file.  If not, download it as linked above and...open the license file.  Use the 152.3 license
 
# Apply and hit OK
 
# Close X-Win by right-clicking the X icon and selecting close
 
# Restart X-Win
 
-->
 
 
 
===Firewalls and Routers===
 
If you are totally sure you did everything correctly, X-Win 32 is running, X-Config has the OIT machine you connected to on its security list, you are not on a router (or if you are you have compensated for it), then you likely have a firewall issue and need to figure out how to allow incoming traffic on port 6000 through.
 
 
 
Here are the instructions on how to do this if you have Trend Micro PC-cillin  Internet Security.  You may have to modify this process slightly depending on your firewall software.
 
# Open the main virus protection console 
 
# Click the "Network Security" tab 
 
# Select which profile you are using and then click "Edit"
 
# Click the "Exceptions" tab
 
# Click "Add"
 
# Select "incoming" as your connection and "allow" as your action
 
# Select "Specified Port(s)" and Type "6000"
 
# Click "Okay"
 
 
 
For the Windows Firewall, follow basically the same process AND make sure the "Block all connections" or "Ignore Exceptions" or something with that kind of wording is '''not''' checked.
 
 
 
===Fatality===
 
If you end up getting an error related to "fatality" - specifically:
 
<source lang=text>
 
StarNet Communications Corp
 
X-Win32 2010
 
Build: 1155
 
A fatal error has occurred and X-Win32 2010 will now exit. Please open xwin.0.log for more information.
 
</source>
 
and the log file says
 
<source lang=text>
 
Cannot establish any listening sockets - Make sure an X server isn't already running
 
</source>
 
 
 
one program that has caused this problem is an AOL firewall.  Try turning that off and see what happens.
 
 
 
===Problems with the setenv command===
 
These will only happen if you are ''not'' using port forwarding.  For the Class of 2012 and after, the issues below should really never crop up:
 
====REMOTEHOST: Undefined variable.====
 
If you type the <code>setenv DISPLAY $REMOTEHOST\:0.0</code> line and the computer replies
 
<blockquote>
 
REMOTEHOST: Undefined variable.
 
</blockquote>
 
you will need to connect to a different OIT machine.  You probably logged onto teer1.oit.duke.edu.
 
====Can't open display====
 
If the computer replies
 
<blockquote>
 
Can't open display: blah.blah.duke.edu :0.0
 
</blockquote>
 
note the extra space between the edu and the :0.0; that means you put a space after the slash during setenv (i.e. you said $REMOTEHOST\ :0.0 instead of $REMOTEHOST\:0.0)
 
 
 
==Questions==
 
{{Questions}}
 
 
 
== External Links ==
 
 
 
== References ==
 
<references />
 
 
 
[[Category:Software]]
 
[[Category:BME 153]]
 
[[Category:ECE 280]]
 
[[Category:ECE 382]]
 
[[Category:EGR 103]]
 
[[Category:EGR 224]]
 
[[Category:ME 344]]
 
 
 
[[Category:Semester Update]]
 

Latest revision as of 21:29, 21 August 2016

Note: As of Fall 2016, OIT is no longer providing X-Win 32; Windows users should use MobaXterm instead.