按照计软同学给的我们学校计算机网络课程的实验,这次做的是实验二,主要是熟悉一些常用的网络命令。
ifconfig
ifconfig -a
这个命令熟悉的不能再熟了,输入命令后显示的内容如下
inet
:IP地址
netmask
:子网掩码
broadcast
:广播地址
mtu
:最大传输单元(通信协议的某一层上面所能通过的最大数据包大小)
wlps20
:电脑无线网卡的名字
enps30
:电脑有线网卡的名字
lo
:也就是localhost
ping
ping
是一个测试程序,用于确定本地主机是否能与另一台主机交换(发送与接收)数据报。如果ping
运行正确,就可以排除网络访问层、网卡、Modem的I/O线路、电缆和路由器等存在的故障。
在Windows
下按缺省设置,运行Ping命令时发送4个ICMP
(网间控制报文协议)“回送请求”,每个32字节数据;若正常应得到4个回送应答。
ping
能够以毫秒为单位显示发送“回送请求”到返回“回送应答”之间的时间量。如果应答时间短,表示数据报不必通过太多的路由器或网络连接,速度比较快。
ping
还能显示TTL
(Time To Live存在时间值)。通过TTL值推算数据包已经通过了多少个路由器: 源地点TTL起始值(就是比返回TTL略大的一个2的乘方数)-返回时TTL值。例如,返回TTL值为119,那么可以推算数据报离开源地址的TTL起始值为128, 而源地到目标地要通过9个路由器网段(128-119);如果返回TTL值为246,TTL起始值就是256,源地点到目标地点要通过9个路由器网段。
ping 127.0.0.1
这个 ping
命令被送到本地计算机的IP软件。如果出错,则表示TCP/IP
的安装或运行存在某些最基本的问题。
黄色框里面的rtt
是Round Trip Time
,往返时延,指从客户端发送一个很小的数据包到服务器并返回经历的时间。因为在Ubuntu
下面跟Windows
不一样,ping
了之后的icmp
包会一直发,如果想要停止的话Ctrl+C
。也可以放在后台运行同时将信息重定向到一个文件。
ping 127.0.0.1 > pingstat.txt
tail -f pingstat.txt #查看文件内容
jobs #查看后台命令
ps -ef |grep ping #找到ping进程号
kill 10408 #杀死进程
ping本机地址
这个命令被送到本计算机所配置的IP地址。如果出错,则表示本地配置或安装存在问题。本机地址可以由前面的ifconfig
wlps20
查看。(因为现在我用的是WiFi上网,如果是接网线的话应该看有线网卡enps30
分配的IP地址)
ping局域网内的其他IP
这个命令经过本地计算机的网卡及网络电缆到达其他计算机,再返回。如收到回送应答,表明本地网络的网卡和载体运行正确。但如果收到0个回送应答,表示子网掩码不正确或网卡配置错误或电缆系统有问题。
安装工具
sudo apt-get install nmap
输入命令查找当前局域网中的IP地址
nmap -v -sP 你的ip地址/24
#假设192.168.1.0是我的IP地址
nmap -v -sP 192.168.1.0/24
扫描结果显示有八个主机在线,在这里也就是说有八个设备用我家的WiFi
。
刚好我的手机的IP地址就是xxx.xxx.xxx.101
ping网关
这个命令如果应答正确,表示局域网中的网关路由器正在运行并能够作出应答。
输入命令找出当前网关的地址
ip route show
我们假设查询出来的网关是192.168.0.1
ping 182.168.0.1
ping远程IP
如收到4个应答,表示成功使用了缺省网关。对于拨号上网用户则表示能够成功的访问Internet(但不排除ISP(运营商)
的DNS
会有问题)。
ping 一个域名
对某个域名执行ping
命令,本地计算机必须先通过DNS
服务器将域名转换成IP地址。如果出现故障,则表示DNS
服务器的IP地址配置不正确或DNS
服务器有故障。利用该命令实现域名对IP地址的转换功能。
比如ping www.yahoo.com
或者ping www.github.com
。但是ping
github的时候太慢了所以我就先提前退出了。
可以看到ping
这些外国网站都很慢,而且也出现了丢包packet loss
。
traceroute命令
traceroute
命令可以用来跟踪数据报使用的路由(路径), 并列出在所经过的每个路由器上所花的时间。因此,traceroute
一般用来检测故障的位置。该实用程序跟踪的路径是源计算机到目的计算机的一条路径,但不能保证或认为数据报总遵循这个路径。
traceroute
用法:只需在traceroute
后面跟一个IP地址或URL
,traceroute
会进行相应的域名转换。如:
traceroute www.yahoo.com
traceroute 192.168.12.5
注意:Windows
下是tracert
命令。
安装
sudo apt-get install traceroute
traceroute www.baidu.com
可以看到百度的域名对应的IP地址是14.215.177.38
。可在浏览器输入这个IP地址,你就会看到百度的主页了。
输入命令后完整的显示结果如下
记录按序列号从1开始,每个纪录就是一跳 ,每跳表示一个网关。可以看到有一些行是以星号表示的。出现这样的情况,可能是防火墙封掉了ICMP
的返回信息,所以我们得不到什么相关的数据包返回数据。
nslookup
nslookup
命令的功能是查询一台机器的IP地址和其对应的域名,通常它能监测网络中DNS服务器是否能正确实现域名解析它,它的运行需要一台域名服务器来提供域名服务。如果用户已经设置好域名服务器,就可以用这个命令查看不同主机的IP地址对应的域名。
该命令的一般格式为:nslookup [IP地址/域名]
nslookup www.baidu.com
可以看到百度有两个IP地址,14.215.177.38
是前面使用traceroute
命令的时候由域名解析出来的一个结果,这次还多了个14.215.177.39
。在浏览器输入,也是能访问百度的主页。