Windows系统下 用XShell作为Telnet客户端连接47服务器,整个过程可以用Wireshark(验证版本:1.6.5)完整地记录下来。
Wireshark->Capture->Interface中设置要监视的网卡;
Wireshark->Capture->Options->Capture Filter后写要监控的目标主机IP地址,这里写: host 10.0.2.47 ;
Wireshark->Capture->Start;
启动XShell连接47:Xshell:> telnet 10.0.2.47 ;
Wireshark将显示整个交互过程(见下图),可以看到主界面分为3部分,上面按时间顺序列出了每次交互的数据包(packet);中间是这个数据包的详细内容,第一层Frame 14(xx层?)是xxx,第二层Ethernet II(链路层)主要由源和目标主机的网卡(Mac)地址组成,用ifconfig -a(Linux)或者ipconfig /all(windows)可以验证,第3层(网络层)是IP协议报头,主要包括源和目标的IP地址等,第4层(传输层)是TCP协议报头,主要包括源和目标的端口号、包序列号等,第5层(应用层)是Telnet数据;主界面的下部是此数据包的具体内容,以16进制显示。
连接后首先进行选项协商,然后传输数据,下面以“是否回显”为例详细说明协商过程,图中10.0.2.47是Telnet Server,10.32.1.56是Client。
第14步S要求C回显:ff fd 01,即IAC DO ECHO(见上图);
第17步C回答S客户端不回显:ff fc 01,即IAC WONT ECHO;
第19步S通知C服务端将回显:ff fb 01,即IAC WILL ECHO;
第20步C同意服务端回显:ff fd 01,即IAC DO ECHO;
选项协商中各种搭配的具体含义参见“ The Telnet Protocol ”;
更改XSehll窗口尺寸引起的window size negotiation:
ff fa 1f 00 62 00 1b ff f0,即IAC SB 31(Options: Window Size) 98 27 IAC SE
转换为Telnet语句:
Suboption Begin: Negotiate About window size
Width: 98 Height: 27
Command: Suboption End
命令行用法
C:\Program Files\Wireshark>tshark -D 1. \Device\NPF_{4DF0B9FD-57A8-43FC-9EC9-354B454E475D} (VMware Virtual Ethernet Adapter) 2. \Device\NPF_{CA8CAD23-7ADD-4F2B-8A77-1E9E6810FE38} (Broadcom NetLink (TM) Gigabit Ethernet Driver) 3. \Device\NPF_{53720D33-0B96-48DB-A977-07A0EC43F65B} (VMware Virtual Ethernet Adapter)
tshark -f "host 10.0.2.47" -i 2 -c 20 -w myfile
用wireshark打开myfile
用tshark -F可以看到snoop好像是可以在solaris上打开的输入监控文件格式 Linux下 47上目前的操作系统是Red Hat Enterprise Linux Server release 5.4,安装tshark需要 libsmi-0.4.5-2.el5.x86_64.rpm 和 wireshark-1.0.15-1.el5_6.4.x86_64.rpm 两个包,安装过程很简单,首先将这个包上传到47上,然后执行:
rpm -ivh libsmi-0.4.5-2.el5.x86_64.rpm
rpm -ivh wireshark-1.0.15-1.el5_6.4.x86_64.rpm
verify:
[root@goduserver tool]# whereis tshark tshark: /usr/sbin/tshark /usr/share/man/man1/tshark.1.gz
rpm包下载站点: pkgs.org ,备用站点: http://rpm.pbone.net/
获取网卡列表:
[root@goduserver tool]# tshark -D 1. eth3 2. ...
获取监测数据:
[root@goduserver help]# tshark -i eth3 -w myoutput host 10.32.1.59
普通用户权限不够无法进行监测:
[godu@goduserver ~]$ tshark -i eth3 host 10.32.1.59
Capturing on eth3
tshark: The capture session could not be initiated (socket: Operation not permitted)...
读取监测数据:
[root@goduserver tool]# tshark -r myoutput -x -V
将监测数据保存为文本:
[root@goduserver tool]# tshark -r myoutput -x -V > mytxt
或者将myoutput下载到PC上用Wireshark分析;