走进Linux_Linux中常用的网络命令

引:Linux的网络功能是相当强大的。所以我们必须要好好了解它,这里我们只是介绍一下常用的命令。

设置网络参数的命令

ipconfig

ifconfig主要是可以都手动启动、查看与修改网络接口的相关参数,范例如下:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
// 1. 查看所有网络接口
ifconfig
// 2. 查看eth0网卡
ifconfig eth0

输出:
eth0: flags=4163<UP,BROADCAST,RUNNING,MULTICAST> mtu 1500
inet 172.16.0.9 netmask 255.255.240.0 broadcast 172.16.15.255
ether 52:54:00:1c:91:2a txqueuelen 1000 (Ethernet)
RX packets 15979545 bytes 1741444280 (1.6 GiB)
RX errors 0 dropped 0 overruns 0 frame 0
TX packets 15811187 bytes 2149680103 (2.0 GiB)
TX errors 0 dropped 0 overruns 0 carrier 0 collisions 0

* eth0:就是网络卡的代号,也有 lo 这个 loopback
* mtu:网络接口的最大传输单元
* inet:IPv4 的 IP 地址,后续是子网掩码和广播地址
* RX:那一行代表的是网络由启动到目前为止的封包接收情况, packets 代表封包数、errors 代表封包发生错误的数量、 dropped 代表封包由于有问题而遭丢弃的数量等等
* TX:与 RX 相反,为网络由启动到目前为止的传送情况;collisions:代表封包碰撞的情况,如果发生太多次, 表示您的网络状况不太好

// 3. 暂时修改网络接口,给予eth0一个192.168.100.100/24的参数
ifconfig eth0 192.168.100.100

// 4. 将手动的处理全部取消,使用原有的设置值重置网络参数
/etc/init.d/network restart

网络排错与查看命令

ping

这个 ping 是很重要的指令,ping 主要透过 ICMP(Internet控制报文协议) 封包来进行整个网络的状况报告。范例如下:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
// 1. 检测一下168.95.1.1这部DNS主机是否存在(存在于网络环境中)
ping -c 3 168.95.1.1

输出:
PING 168.95.1.1 (168.95.1.1) 56(84) bytes of data.
64 bytes from 168.95.1.1: icmp_seq=1 ttl=239 time=69.9 ms
64 bytes from 168.95.1.1: icmp_seq=2 ttl=239 time=70.4 ms
64 bytes from 168.95.1.1: icmp_seq=3 ttl=239 time=69.9 ms

--- 168.95.1.1 ping statistics ---
3 packets transmitted, 3 received, 0% packet loss, time 2002ms
rtt min/avg/max/mdev = 69.920/70.119/70.467/0.328 ms


// 2. 找出最大的MTU数值(如果有响应,那就是可以接受这个数据包,如果无响应,就表示这个MTU太大了)
ping -c 2 -s 1000 -M do 192.168.1.254

netstat

如果你觉得你的某个网络服务明明就启动了,但是就是无法造成联机的话,要查询一下自己的网络接口所监听的端口 (port) 来看看是否真的有启动。范例如下:

1
2
3
4
5
6
7
8
9
10
11
// 1. 列出当前路由表状态,且以IP及port number进行系那是
netstat -rn

// 2. 列出当前的所有网络连接状态,使用IP与port number
netstat -an

// 3. 显示目前已经启动的网络服务
netstat -tulnp

// 4. 查看本机上所有的网络连接状态
netstat -atunp

host

这个命令可以用来查出某个主机名的IP,范例如下:

1
2
// 1. 列出www.yahoo.com的IP(向/etc/resolv.conf里面记录的DNS服务器查询IP)
host www.yohoo.com

nslookup

功能和host一样,范例如下:

1
2
3
4
5
// 1. 查询www.google.com的IP
nslookup www.google.com

// 2. 找出168.95.1.1的主机名 (建议使用dig)
nslookup 168.95.1.1

远程连接命令与即时通信软件

telnet

telnet本身数据的在传输过程中使用的是明文,所以数据在Internet上面传输的时候,会比较危险。使用范例如下:

1
2
3
4
5
6
// 1. 连接到当前热门的PTT BBS站点ptt.cc
yum install telnet // 默认没有安装(自己未成功)

// 2. 检测本地主机的110这个port是否正确启动,
// 如果出现telnet: connect to address 127.0.0.1: Connection refused,代表这个port没有启动或者这个连接有问题
telnet localhost 22

ftp

用于处理ftp服务器的下载数据,范例如下:

1
2
// 1. 连接到一个ftp服务器
ftp ip //之后可以利用help来帮助操作

文字接口网页浏览

最大的功能就是查阅Linux本机上面以html语法写成的文件数据。具体效果自己看吧,范例如下:

1
2
// 1. 浏览Linux kernel网站
links http://www.kernel.org

wget

主要的功能是取得网页数据。范例如下:

1
2
3
// 1. 下载 2.6.17 版的linux内核
wget \
http://www.kernel.org/pub/linux/kernel/v2.6/linux-2.6.17.tar.gz

参考

  1. 《鸟哥的Linux私房菜》