服务/软件管理:12---网络命令(ping、traceroute、mtr、nslookup、ifconfig、ifup、ifdown)
原创
©著作权归作者所有:来自51CTO博客作者董哥的黑板报的原创作品,请联系作者获取转载授权,否则将追究法律责任
一、ping
- ping命令是用于检测网络故障的常用命令,可以用来测试一台主机到另外一台主机的网络是否连通
- 语法:
ping [-aAbBdDfhLnOqrRUvV46] [-c count] [-F flowlabel] [-i interval]
[-I interface] [-l preload] [-m mark] [-M pmtudisc_option] [-N nodeinfo_option]
[-w deadline] [-W timeout] [-p pattern] [-Q tos] [-s packetsize]
[-S sndbuf] [-t ttl] [-T timestamp option] [hop ...] destination
-
相关选项如下:
- d 使用Socket的SO_DEBUG功能
- -c<完成次数> 设置完成要求回应的次数
- -f 极限检测
- -i<间隔秒数> 指定收发信息的间隔时间
- -I<网络界面> 使用指定的网络接口送出数据包
- -l<前置载入> 设置在送出要求信息之前,先行发出的数据包
- -n 只输出数值
- -p<范本样式> 设置填满数据包的范本样式
- -q 不显示指令执行过程,开头和结尾的相关信息除外
- -r 忽略普通的Routing Table,直接将数据包送到远端主机上
- -R 记录路由过程
- -s<数据包大小> 设置数据包的大小
- -t<存活数值> 设置存活数值TTL的大小。每经过一个‘路由点‘,就把预先设定的这个TTL数值减1,直到最后TTL=1时报文就被扔掉,不向下转发。ping显示的TTL是指:被ping主机那里 返回的报文,到了你这里,从它自己预设的TTL减小到还剩下多少
- -v 详细显示指令的执行过程
演示案例
ping -c 3 baidu.com
二、traceroute
- traceroute可以提供从用户的主机到互联网另一端的主机的路径,虽然每次数据包由同一出发点到达同一目的地的路径可能会不一样,但通常来说大 多数情况下路径是相同的
- 使用时需要进行安装(下面两个选择一个):
sudo apt install inetutils-traceroute
sudo apt install traceroute
演示案例
- 在输出中记录按序列号从1开始,每个记录代表网络一跳,每跳一次表示经过一个网关或者路由;我们看到每行有三个个时间,单位是毫秒,指的是 这一跳需要的时间
三、mtr
- mtr命令是Linux系统中的网络连通性测试工具,也可以用来检测丢包率
演示案例
- 其中的第2列为丢包率,可以用来判断网络中两台机器的连通质量
四、nslookup
- 这是一款检测网络中DNS服务器能否正确解析域名的工具命令,并且可以输出
演示案例
- 从输出中可以看到,sina.com域名被正确解析到IP地址66.102.251.24
五、ifconfig
- 查询、设置网卡与IP网络等相关参数
- 这个命令设置的值只在本次生效,不会改变网络配置文件的内容
- 格式:
ifconfig [-v] [-a] [-s] [interface]
ifconfig [-v] interface [aftype] options | address ...
-
相关选项:
- interface:网卡接口的名称。eth0、eth1、ppp0等等
- add<地址> 设置网络设备IPv6的IP地址。
- del<地址> 删除网络设备IPv6的IP地址。
- down 关闭指定的网络设备。
- up 启动指定的网络设备。
- <hw<网络设备类型><硬件地址> 设置网络设备的类型与硬件地址。
- io_addr<I/O地址> 设置网络设备的I/O地址。
- irq<IRQ地址> 设置网络设备的IRQ。
- media<网络媒介类型> 设置网络设备的媒介类型。
- mem_start<内存地址> 设置网络设备在主内存所占用的起始地址。
- metric<数目> 指定在计算数据包的转送次数时,所要加上的数目。
- mtu<字节> 设置网络设备的MTU。例如:mtu 1500(单位byte)
- netmask<子网掩码> 设置网络设备的子网掩码。
- tunnel<地址> 建立IPv4与IPv6之间的隧道通信地址。
- broadcast<地址> 将要送往指定地址的数据包当成广播数据包来处理。
- pointopoint<地址> 与指定地址的网络设备建立直接连线,此模式具有保密功能。
- promisc 关闭或启动指定网络设备的promiscuous模式。
- [IP地址] 指定网络设备的IP地址。
- [网络设备] 指定网络设备的名称。
演示案例
ifconfig eth0 down
ifconfig eth0 up
- 暂时修改网络接口,给予eth0一个IP。不加其他参数时,系统会自动计算出netmask、network、broadcast等参数
ifconfig eth0 192.168.43.100
ifconfig eth0 netmask 255.255.255.128 mtu 8000
恢复
- 我们说过改名字只是本次修改内容,并不是写入配置文件中,可以通过下面的命令来恢复到设置之前的状态
/etc/init.d/network restart
- 将刚才设置的数据全部失效,恢复/etc/sysconfig/network-scripts/内的配置文件设置
- 如果不行就重启
六、ifup、ifdown
-
ifup:启动某个网络接口
-
ifdown:关闭某个网络接口
- 格式:
ifup {interface}
ifdown {interface}
- 这两个脚本会去读取/etc/sysconfig/network-scripts/目录下的相关网络接口的配置文件,并根据配置文件的内容来启动、关闭该网络接口
- interface必须是/etc/sysconfig/network-scripts/目录配置文件中设置的网络接口名称才可以。如果使用ifconfig改变了网络接口后,ifdown、ifup就不会识别了。因为ifup、ifdown会对比当前网络的参数与/etc/sysconfig/network-scripts/中配置文件的内容是否相符。所以当你用ifconfig修改完之后,只能使用ifconfig 接口名 down/up来关闭/启动窗口
演示案例