Linux下必须知道的网络命令(持续更新)

1. ifconfig

ifconfig用于输出网络接口配置、调优和debug的各种选项。可以快捷地查看IP地址和其它网络接口的信息。

键入ifconfig查看所有启用的网络接口的状态,包括它们的名字。

可以指定网络接口的名字来只显示这一个接口的信息。

$ ifconfig
eth0      Link encap:Ethernet  HWaddr 00:0c:29:5e:c0:a1  
          inet addr:192.168.169.87  Bcast:192.168.169.255  Mask:255.255.255.0
          inet6 addr: fe80::20c:29ff:fe5e:c0a1/64 Scope:Link
          UP BROADCAST RUNNING MULTICAST  MTU:1500  Metric:1
          RX packets:2166 errors:0 dropped:0 overruns:0 frame:0
          TX packets:1703 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:1000 
          RX bytes:238837 (238.8 KB)  TX bytes:222389 (222.3 KB)
          Interrupt:19 Base address:0x2000 

lo        Link encap:Local Loopback  
          inet addr:127.0.0.1  Mask:255.0.0.0
          inet6 addr: ::1/128 Scope:Host
          UP LOOPBACK RUNNING  MTU:65536  Metric:1
          RX packets:172 errors:0 dropped:0 overruns:0 frame:0
          TX packets:172 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:1 
          RX bytes:12560 (12.5 KB)  TX bytes:12560 (12.5 KB)

2. ping

ping发送ECHO_REQUEST包到你指定的地址。这样你可以很方便确认你的电脑和Internet或是一个指定的IP地址是不是通的。

使用 -c 开关,可以指定发送ECHO_REQUEST包的个数。

$ ping -c 5 www.baidu.com
PING www.baidu.com (220.181.112.244) 56(84) bytes of data.
64 bytes from 220.181.112.244: icmp_seq=1 ttl=52 time=17.0 ms
64 bytes from 220.181.112.244: icmp_seq=2 ttl=52 time=8.21 ms
64 bytes from 220.181.112.244: icmp_seq=3 ttl=52 time=7.66 ms
64 bytes from 220.181.112.244: icmp_seq=4 ttl=52 time=8.18 ms
64 bytes from 220.181.112.244: icmp_seq=5 ttl=52 time=8.10 ms

--- www.baidu.com ping statistics ---
5 packets transmitted, 5 received, 0% packet loss, time 4009ms
rtt min/avg/max/mdev = 7.666/9.845/17.051/3.609 ms

3. tracepath & traceroute

tracepath命令和traceroute命令功能类似,但不需要root权限。并且Ubuntu预装了这个命令,traceroute命令没有预装的。

tracepath追踪出到指定的目的地址的网络路径,并给出在路径上的每一跳(hop)。

如果你的网络有问题或是慢了,tracepath可以查出网络在哪里断了或是慢了。

$ tracepath www.baidu.com
 1?: [LOCALHOST]                                         pmtu 1500
 1:  192.168.169.1                                         0.452ms 
 1:  192.168.169.1                                         0.644ms 
 2:  192.168.2.1                                           1.850ms 
 3:  192.168.1.1                                           2.639ms 

4. netstat

netstat命令可以显示网络接口的很多统计信息,包括打开的socket和路由表。无选项运行命令显示打开的socket。

$ netstat -an
Active Internet connections (servers and established)
Proto Recv-Q Send-Q Local Address           Foreign Address         State      
tcp        0      0 127.0.0.1:3306          0.0.0.0:*               LISTEN     
tcp        0      0 0.0.0.0:22              0.0.0.0:*               LISTEN     
tcp        0     52 192.168.169.87:22       192.168.169.86:33582    ESTABLISHED
tcp6       0      0 :::9000                 :::*                    LISTEN       
tcp6       0      0 :::445                  :::*                    LISTEN     
udp        0      0 0.0.0.0:111             0.0.0.0:*                          
udp        0      0 192.168.169.255:137     0.0.0.0:*                                                
udp        0      0 0.0.0.0:138             0.0.0.0:*                                               
udp6       0      0 :::111                  :::*                               
udp6       0      0 :::771                  :::*                               
Active UNIX domain sockets (servers and established)
Proto RefCnt Flags       Type       State         I-Node   Path
unix  2      [ ]         DGRAM                    15800    /run/user/1000/systemd/notify
unix  2      [ ACC ]     STREAM     LISTENING     15801    /run/user/1000/systemd/private
unix  2      [ ACC ]     SEQPACKET  LISTENING     9966     /run/udev/control
unix  2      [ ACC ]     STREAM     LISTENING     9962     /run/systemd/private
unix  2      [ ACC ]     STREAM     LISTENING     9967     /run/systemd/fsck.progress

netstat -p命令可以显示打开的socket对应的程序。

$ netstat -p  
(Not all processes could be identified, non-owned process info
 will not be shown, you would have to be root to see it all.)
Active Internet connections (w/o servers)
Proto Recv-Q Send-Q Local Address           Foreign Address         State       PID/Program name
tcp        0      0 192.168.169.87:http     192.168.169.86:34822    ESTABLISHED -               
tcp        0      0 192.168.169.87:ssh      192.168.169.86:33582    ESTABLISHED -                          
tcp6       0      0 localhost:9000          localhost:48676         TIME_WAIT   -                          
Active UNIX domain sockets (w/o servers)
Proto RefCnt Flags       Type       State         I-Node   PID/Program name    Path
unix  2      [ ]         DGRAM                    15800    1018/systemd        /run/user/1000/systemd/notify
unix  2      [ ]         DGRAM                    9968     -                   /run/systemd/journal/syslog
unix  7      [ ]         DGRAM                    9980     -                   /run/systemd/journal/socket
unix  5      [ ]         DGRAM                    10202    -                   /run/systemd/journal/dev-log











评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值