From: CS522 Computer Communications Class Mailing List [mailto:cs522-l@uccs.edu] On Behalf Of Chow, Edward
Sent: Friday, August 25, 2006 10:41 AM
To: CS522 Computer Communications Class Mailing List
Subject: [cs522-l]Re: CS 522 Questions
Jeremy,
Just added your gmail email address to the class email list.
I just solved the puzzle why we get 400 bad request in hw1 exercise 2 “Using telnet a fake web browser to find out the web server response”.
The reason we get the 400 bad request is that IIS was recently updated and reconfigured not to accept HTTP/1.0 requests, only accept requests conforming to the HTTP/1.1. (not quite as you see below) They actually check HOST: field and make sure it is one of the legitimate server domain name (henced one of the web sites) hosted by the web server.
To satisfy that requirement, we need to add meta header field "Host: csweb.uccs.edu" right after the "GET / HTTP/1.1" command
Note that even I enter GET / HTTP/1.0 as request command, so long as I add Host: csweb.uccs.edu field. IIS 6.0 accepts it. It will not accept request with Host: test.uccs.edu.
It also accepts eas.uccs.edu as hostname.
The following session data shows how it works.
[cs691@windom projF2006]$ telnet csweb.uccs.edu 80
Trying 128.198.163.240...
Connected to csweb.uccs.edu (128.198.163.240).
Escape character is '^]'.
GET / HTTP/1.0
HTTP/1.1 400 Bad Request
Content-Type: text/html
Date: Fri, 25 Aug 2006 15:52:00 GMT
Connection: close
Content-Length: 39
<h1>Bad Request (Invalid Hostname)</h1>Connection closed by foreign host.
[cs691@windom projF2006]$ telnet csweb.uccs.edu 80
Trying 128.198.163.240...
Connected to csweb.cs.uccs.edu (128.198.163.240).
Escape character is '^]'.
GET / HTTP/1.0
HOST: test.uccs.edu
HTTP/1.1 400 Bad Request
Content-Type: text/html
Date: Fri, 25 Aug 2006 15:52:55 GMT
Connection: close
Content-Length: 39
<h1>Bad Request (Invalid Hostname)</h1>Connection closed by foreign host.
[cs691@windom projF2006]$ telnet csweb.uccs.edu 80
Trying 128.198.163.240...
Connected to csweb.uccs.edu (128.198.163.240).
Escape character is '^]'.
GET / HTTP/1.0
HOST: csweb.uccs.edu
HTTP/1.1 200 OK
Content-Type: text/html
Server: Microsoft-IIS/6.0
X-Powered-By: PHP/5.0.5
X-Powered-By: ASP.NET
Date: Fri, 25 Aug 2006 15:53:20 GMT
Connection: close
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html><!-- InstanceBegin template="/Templates/eas-main.dwt.php" codeOutsideHTMLIsLocked="false" -->
<head>
<!-- InstanceBeginEditable name="doctitle" -->
<title>UCCS - School of Engineering and Applied Science</title>
<!-- InstanceEndEditable -->
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
<link href="/styles/eas-main.css" rel="stylesheet" type="text/css">
Does csweb.uccs.edu share the same IP address as eas.uccs.edu?
To find out, we use nslookup or dig command to query the domain name server.
[cs691@windom projF2006]$ nslookup csweb.uccs.edu
Server: eas.uccs.edu
Address: 128.198.160.66#53
Non-authoritative answer:
Name: csweb.uccs.edu
Address: 128.198.163.240
[cs691@windom projF2006]$ nslookup eas.uccs.edu
Server: 128.198.160.64
Address: 128.198.160.64#53
Name: eas.uccs.edu
Address: 128.198.160.66
Name: eas.uccs.edu
Address: 128.198.160.64
Name: eas.uccs.edu
Address: 128.198.163.16
It shows that csweb.uccs.edu and eas.uccs.edu have different IP addresses. Actually EAS has three IP addresses.
The dell server has two network interfaces one of them actually listening to multiple IP addresses corresponding to long list of domain names, such mae.uccs.edu, eas.web.uccs.edu, etc. Through IIS configuration manager, IIS was configured to listen to many of these IP addresses, service the web pages from the same virtual directory.
Each domain name is typically served by two name servers. Here we have three domain name serer serving the eas.uccs.edu domain.
[cs691@windom projF2006]$ nslookup lincoln.uccs.edu
Server: 128.198.160.64
Address: 128.198.160.64#53
Non-authoritative answer:
lincoln.uccs.edu canonical name = lincoln.eas.uccs.edu.
Name: lincoln.eas.uccs.edu
Address: 128.198.160.64
[cs691@windom projF2006]$ nslookup evans.uccs.edu
Server: 128.198.160.64
Address: 128.198.160.64#53
Name: evans.uccs.edu
Address: 128.198.160.66
[cs691@windom projF2006]$ nslookup 128.198.163.16
Server: 128.198.160.64
Address: 128.198.160.64#53
16.163.198.128.in-addr.arpa name = easweb.uccs.edu.
16.163.198.128.in-addr.arpa name = easweb.eas.uccs.edu.
16.163.198.128.in-addr.arpa name = csweb.eas.uccs.edu.
16.163.198.128.in-addr.arpa name = www.eas.uccs.edu.
16.163.198.128.in-addr.arpa name = eas.uccs.edu.
Edward
-----Original Message-----
From: Jeremy Witmer [mailto:jwitmer@uccs.edu]
Sent: Friday, August 25, 2006 9:13 AM
To: chow@cs.uccs.edu
Subject: CS 522 Questions
Professor,
Please add my email address jtwitmer@gmail.com to the class list.
I've created the bin and src directories for my semester project
backups. Also, I've created the class webpage in ~jtwitmer/cs522/,
along with my image.
Finally, in the second exercise of the homework, I've been trying to
telnet to csweb.uccs.edu, port 80. It's returning a
HTTP/1.1 400 Bad Request
header when I request with GET / HTTP/1.0, or any other request. The
reason I ask this is because the Server field in the header isn't
returned except on a 200 OK status message.
Some of this might be duplicated in previous emails, and if so, I
apologize.
Thanks,
Jeremy Witmer
From: CS522 Computer Communications Class Mailing List [mailto:cs522-l@uccs.edu] On Behalf Of Chow, Edward
Sent: Wednesday, August 23, 2006 1:24 AM
To: CS522 Computer Communications Class Mailing List
Subject: [cs522-l]Re: Regarding CS 522 Homework #1
Samarpita,
Attached Please find the answers. Good questions. We will discuss these in class.
Remind me if I did not.
Edward
-----Original Message-----
From: Samarpita Hurkute [mailto:shurkute@uccs.edu]
Sent: Tuesday, August 22, 2006 10:44 PM
To: Chow, Edward
Subject: Re: Regarding CS 522 Homework #1
Hello Dr. Chow,
Some of the basic questions I have are
1.I did a remote access login thru Putty...what is Putty
Configuration?
After you installed putty, just type in any CS Unix machine in the Hostname field, e.g. blanca.uccs.edu. and make sure Port is 22. You can click Protocol choice to be SSH and putty will set the port number to 22. Then click open.
You will get a login prompt. Type in your CS Unix machine login. It then asks your password.
Once login, you are in the home directory of your CS Unix machine.
SSH Secure Shell Client and Secure File Transfer provide richer GUI, better integration with secure file transfer, allow create multiple shell windows by clicking the menuitem, and better drag and drop operation for file copying. Putty provides text based interface from command prompt window. I would recommend that you give SSH.org (free) product a try.
2. In putty it states a port 22 alongside the host name? what does a
port indicate?
As we discussed in class, IP address is used to identify sending and receiving hosts. However, modern machine running multiple applications (browser, IM, SSH, etc), we use a 16-bit number called port to identify the network application that sends msg or that is the intended recipient of the msg. Port 22 is designated to Secure Shell Login.
The following is the list of ports for protocols you may use in daily Internet access.
Port 21. ftp (File Transfer Protocol).
Port 22 is designated to Secure Shell Login Protocol.
Port 23 for telnet (plain text with no encryption/authentication).
Port 25 SMTP (Simple Mail Transfer Protocol).
Port 53 DNS server
Port 80 http
Port 109 POP2 (Post Office Protocol for retrieving email)
Port 123 ntp (Network Time Protocol)
Port 137 netbios-ns (NETBIOS Name Service)
netbios-dgm 138/tcp # NETBIOS Datagram Service
netbios-dgm 138/udp
netbios-ssn 139/tcp # NETBIOS session service
netbios-ssn 139/udp
imap 143/tcp imap2 # Interim Mail Access Proto v2
imap 143/udp imap2
snmp 161/tcp # Simple Net Mgmt Protocol
ldap 389/tcp
Port 443 https
rtsp 554/tcp # Real Time Stream Control Proto
ms-sql-s 1433/tcp # Microsoft-SQL-Server
mysql 3306/tcp # MySQL
nfs 2049/udp nfsd # Network File System
The /etc/services file in a Unix machine shows the list of port assignments to different protocol/services. Check it out. On our CS Unix machine, it starts with port 1 ends at port 60179.
tcpmux 1/tcp # TCP port service multiplexer
tcpmux 1/udp # TCP port service multiplexer
rje 5/tcp # Remote Job Entry
rje 5/udp # Remote Job Entry
..
fido 60179/tcp # Ifmail
fido 60179/udp # Ifmail
3. What is SSH and Telnet Protocol?
SSH stands for Secure Shell Protocol. It provides a secure communication protocol between sender and receiver, to authenticate each other and to exchange symmetric key to encrypt the data sent over the connection, so any one sniffing in the communication links along the route or breaking to the routers along the route can not decrypt data, i.e., find out what actually being sent. The SSH Server daemon listens to port 22.
Telnet Protocol is an old protocol provide plain text login and connection service from a client to a server. The telnet login server daemon listens to port 23.
4. Where can I get information on access rights?
For access rights on Unix machine, see http://www.dartmouth.edu/~rc/help/faq/permissions.html
See also Unix tutorial for beginner.
http://www.ee.surrey.ac.uk/Teaching/Unix/
5.I have had no experience with html files...where can I learn about
them.
See Wade Martinson's HTML tutorials
6. What means the UFP account ?
Any student enrolled in UCCS will be automatically created a campus wide account, which allows access to all PCs in the library, common labs, classrooms, and EAS college computing labs. It is also the same login/password students can use for the free dialup and virtual private network (vpn) services. To find out what your ufp login and password is, visit IT help desk in the basement of EL Pomar library.
See the help desk web site for more info. http://www.uccs.edu/~helpdesk/
7. How are the CS unix machines connected to each other? It means
whichever unix machine I login how does all the machines have same
data about CS 522
They are Dell Servers connected to each other through the Cisco switch (used to be HP switch) somewhere in 2nd floor closet). Each Dell server has an Fast Ethernet (100Mbps) card that has a RJ45 port. Ethernet cable is used to connect the RJ45 port to a switch port on the cisco switch. From the Cisco switch, there is a gigabit fiber connection connected to Cisco routers in the basement of El Pomar library. From there it connects through oc3 ATM connection to Denver then on to Internet.
We see the same home directory or cs522 directory, no matter which CS Unix machines we login.
The reason is that the home directories or all accounts are located physically on RAID disk system of cs.uccs.edu file server. This file server runs Network File System (NFS). Each of the CS Unix machines run NFS client to “mount” the remote files on cs.uccs.edu and look as if they were in the local file system.
Type in “df” command on CS Unix machines. You will see faculty, reseach, students (the directory where your account located) are not local (indicated by /dev under File System column. For example cs:/usr2/students indicate the actually directory is /usr2/student on machine cs.uccs.edu and it was mounted on the local machine with the path /.automount/cs/root/usr2/students
and any file underneath can be referenced with this prefix. For example, I switch to your home directory by executing “cd /.automount/cs/root/usr2/students/shurkute/public_html”
Same if you shows the path of your current directory by executing “pwd” command.
windom.uccs.edu> df
Filesystem 1K-blocks Used Available Use% Mounted on
/dev/md0 277492688 170720200 92676680 65% /
/dev/sda3 101107 60377 35509 63% /boot
none 2010928 0 2010928 0% /dev/shm
cs:/usr2/faculty 245369104 80930392 151974688 35% /.automount/cs/root/usr2/faculty
cs:/usr2/research 245369104 80930392 151974688 35% /.automount/cs/root/usr2/research
cs:/usr2/students 245369104 80930392 151974688 35% /.automount/cs/root/usr2/students
cs:/usr2/users 245369104 80930392 151974688 35% /.automount/cs/root/usr2/users
Hope this helps.
Also your need to open your homework directory for apache web server and me to access.
In your home directory, execute “chmod 755 ../shurkute”
I believe hw1 includes such instruction. Without such access right change, we will
Thanks
Samarpita
On Tue, 22 Aug 2006 18:50:33 -0600
"Chow, Edward" <chow@eas.uccs.edu> wrote:
> Samarpita,
>
> There is no low-end question. After so many years working on network
> area, I still learn from students when discuss and try to answer
>their
> questions.
> You can also email me the questions, or chat me online.
> Get the answer quick.
>
> Edward
From: CS522 Computer Communications Class Mailing List [mailto:cs522-l@uccs.edu] On Behalf Of Chow, Edward
Sent: Tuesday, August 22, 2006 6:11 PM
To: CS522 Computer Communications Class Mailing List
Subject: [cs522-l]CS522: maillist and additioanl viva.uccs.edu account is setup
Dear CS522 class,
Our system admin has set up all our accounts for us on CS Unix machines.
I have set up cs522-l@uccs.edu email list for distributing Q&A and class discussion. Please restrict the usage to those purposes. Right now it include only your official UCCS email address (with the format login@uccs.edu).
For avoiding the spam mails, you can only send/reply email to this email list using the uccs mail server with the above email address. If you like to send/reply email from your favorite mail server, such as hotmail.com or gmail.com, email me that email address and I will add it in.
I also create an account for you on viva.uccs.edu, one of our lab machines. It has the same CS Unix machine login but the password is your student ID. You can use this machine as a backup for your homework exercises.
A sample web page also created for you to revise. For example, http://viva.uccs.edu/~ccabuzzi/cs522/ccabuzzi.html
Check out the class photo album web page. http://cs.uccs.edu/~cs522/CS522F2006Photo.html
Some of you I copied images from previous classes.
By clicking your photo or name, we should see the your cs522 personal web page. Therefore make sure your cs522 personal web page is in the right directory. For example, http://cs.uccs.edu/~mgbaswel/cs522/mgbaswel.html
A semester project folder has been created for you at http://cs.uccs.edu/~cs522/studentproj/projF2006/
Please login to any of CS Unix machines, run the following commands
Edward