Linux查看网络情况

在Linux系统中,可以使用多种命令来查看网络情况,以下是一些常用的命令及功能说明:

查看网络接口信息

ifconfig

  • 功能:用于显示或配置网络接口,能查看网络接口的IP地址、子网掩码、广播地址、MAC地址等信息,还能启用或禁用网络接口。在较新的系统中,推荐使用ip命令替代,但ifconfig仍然被广泛使用。
  • 示例:在终端中直接输入ifconfig,会列出所有活动的网络接口信息,类似下面这样:
eth0: flags=4163<UP,BROADCAST,RUNNING,MULTICAST>  mtu 1500
        inet 192.168.1.100  netmask 255.255.255.0  broadcast 192.168.1.255
        inet6 fe80::20c:29ff:fe0e:6c64  prefixlen 64  scopeid 0x20<link>
        ether 00:0c:29:0e:6c:64  txqueuelen 1000  (Ethernet)
        RX packets 1024  bytes 1048576 (1.0 MiB)
        RX errors 0  dropped 0  overruns 0  frame 0
        TX packets 512  bytes 524288 (512.0 KiB)
        TX errors 0  dropped 0 overruns 0  carrier 0  collisions 0

ip addr(或ip address

  • 功能:查看网络接口的IP地址配置、MAC地址等信息,还可以进行网络接口相关的配置,如添加、删除IP地址等。相比ifconfigip命令更符合现代Linux网络管理理念。
  • 示例:输入ip addr,输出内容类似:
1: lo: <LOOPBACK,UP,LOWER_UP> mtu 65536 qdisc noqueue state UNKNOWN group default qlen 1000
    link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00
    inet 127.0.0.1/8 scope host lo
       valid_lft forever preferred_lft forever
    inet6 ::1/128 scope host 
       valid_lft forever preferred_lft forever
2: eth0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc fq_codel state UP group default qlen 1000
    link/ether 00:0c:29:0e:6c:64 brd ff:ff:ff:ff:ff:ff
    inet 192.168.1.100/24 brd 192.168.1.255 scope global dynamic noprefixroute eth0
       valid_lft 86358sec preferred_lft 86358sec
    inet6 fe80::20c:29ff:fe0e:6c64/64 scope link 
       valid_lft forever preferred_lft forever

查看网络连接状态

netstat

  • 功能:用于显示网络连接、路由表和网络接口等信息,能查看当前系统中所有的网络连接,包括TCP、UDP连接,还能看到连接的状态(如ESTABLISHED、LISTEN等)、本地和远程地址及端口等。不过,在较新的系统中逐渐被ss命令替代。
  • 示例
    • netstat -an:以数字形式显示所有的网络连接,包括监听和已建立的连接。
    • netstat -tuln:查看TCP和UDP的监听端口,t表示TCP,u表示UDP,l表示监听状态,n表示以数字形式显示。
      ss
  • 功能:是新一代查看网络连接状态的工具,相比netstat,它更高效,能获取更详细的网络连接信息,同样可以查看TCP、UDP连接状态,以及socket统计信息等。
  • 示例
    • ss -an:以数字形式显示所有的网络连接。
    • ss -tuln:查看监听的TCP和UDP端口。

查看路由表

route

  • 功能:用于查看和操作Linux内核的路由表,可以查看系统当前的路由信息,包括默认网关、目标网络、子网掩码等。
  • 示例:输入route -n,以数字形式显示路由表信息,类似如下:
Kernel IP routing table
Destination     Gateway         Genmask         Flags Metric Ref    Use Iface
0.0.0.0         192.168.1.1     0.0.0.0         UG    0      0        0 eth0
192.168.1.0     0.0.0.0         255.255.255.0   U     0      0        0 eth0

ip route

  • 功能:用于查看和管理Linux系统的路由表,功能强大且更符合现代Linux网络管理的习惯,可以添加、删除、修改路由条目等。
  • 示例:输入ip route show,显示当前路由表信息。

测试网络连通性

ping

  • 功能:通过发送ICMP(Internet Control Message Protocol)回声请求数据包,测试目标主机是否可达,还能获取往返时间(RTT)等信息,用于判断网络连接是否正常。
  • 示例ping 8.8.8.8,测试本机到Google的DNS服务器(8.8.8.8)的网络连通性。
    traceroute(在某些系统中是tracepath
  • 功能:用于追踪数据包从源主机到目标主机所经过的路由节点,能显示每个节点的IP地址和响应时间,帮助判断网络链路中的故障点或延迟较大的节点。
  • 示例traceroute www.example.com ,追踪到www.example.com所经过的路由。

查看网络带宽使用情况

iftop

  • 功能:实时监控网络接口的带宽使用情况,以直观的界面显示各个连接的传输速率、连接的源IP和目标IP等信息,方便管理员了解网络带宽的占用情况。
  • 示例:直接在终端输入iftop,选择要监控的网络接口(如果有多个),即可查看该接口的带宽使用实时信息。
    iperf(服务端和客户端模式)
  • 功能:是一个用于测量网络带宽的工具,通过在服务端和客户端之间建立连接并传输数据,精确测量网络的最大吞吐量、延迟等性能指标 。
  • 示例
    • 服务端:在服务端机器上运行iperf -s,启动iperf服务端监听。
    • 客户端:在客户端机器上运行iperf -c <server_ip>,连接到服务端并进行带宽测试,<server_ip>是服务端的IP地址。

留下评论

您的邮箱地址不会被公开。 必填项已用 * 标注