Linux下网络运维命令总结

发布于:2025-02-26 ⋅ 阅读:(17) ⋅ 点赞:(0)

一、网络连通性测试

  1. ping

    • 作用:检测目标主机是否可达,并测量网络延迟。

    • 示例

      ping www.example.com
      

      持续发送ICMP报文,按Ctrl+C停止。

      ping -c 4 www.example.com
      

      发送4个ICMP报文后停止。

  2. traceroute

    • 作用:显示数据包到达目标主机所经过的路由路径。

    • 示例

      traceroute www.example.com
      

      使用默认端口进行追踪。

      traceroute -I www.example.com
      

      使用ICMP ECHO代替UDP报文。

  3. mtr

    • 作用:结合了ping和traceroute功能,实时显示路由路径和网络质量。

    • 示例

      mtr www.example.com
      

      启动交互式网络诊断工具。

      mtr -r -c 10 www.example.com
      

      运行10个循环后输出结果并退出。

二、网络配置与接口管理

  1. ifconfig (逐渐被ip命令替代)

    • 作用:配置和显示网络接口信息。

    • 示例

      ifconfig eth0 up
      ifconfig eth0 192.168.1.10 netmask 255.255.255.0
      

      启动接口并设置IP地址和子网掩码。

  2. ip

    • 作用:高级网络配置工具,替代了ifconfigroute等命令。

    • 示例

      ip addr show
      ip link set eth0 up
      ip addr add 192.168.1.10/24 dev eth0
      ip route add default via 192.168.1.1
      

      查看地址信息,启用接口,添加IP地址和默认路由。

  3. ethtool

    • 作用:查询和控制网络接口的以太网设置。

    • 示例

      ethtool eth0
      ethtool -s eth0 speed 1000 duplex full autoneg on
      

      查看接口信息及设置接口速度和双工模式。

三、查看网络状态

  1. netstat (逐渐被ss命令替代)

    • 作用:显示网络连接、路由表、接口统计等信息。

    • 示例

      netstat -tuln
      netstat -i
      

      查看监听的TCP和UDP端口,及网络接口状态。

  2. ss

    • 作用:比netstat更快速和详细地显示套接字信息。

    • 示例

      ss -tuln
      ss -s
      

      查看监听端口及套接字统计信息。

  3. lsof

    • 作用:列出打开的文件,包括网络连接。

    • 示例

      lsof -i
      lsof -i :80
      

      查看所有网络连接及特定端口(如80端口)的连接。

  4. nmap

    • 作用:网络端口扫描与安全审计工具。

    • 示例

      nmap -sP 192.168.1.0/24
      nmap -p 22,80,443 www.example.com
      

      扫描整个子网的主机,或扫描指定端口。

四、域名解析

  1. nslookup

    • 作用:查询DNS记录,进行域名解析。

    • 示例

      nslookup www.example.com
      

      查询域名对应的IP地址。

  2. dig

    • 作用:查询DNS信息,功能比nslookup更强大。

    • 示例

      dig www.example.com
      dig MX example.com
      

      查询A记录或MX记录。

  3. host

    • 作用:简单的DNS查询工具。

    • 示例

      host www.example.com
      host -t MX example.com
      

      查询A记录或MX记录。

五、远程管理

  1. ssh

    • 作用:通过安全的Shell连接远程主机。

    • 示例

      ssh user@192.168.1.100
      ssh -p 2222 user@www.example.com
      

      使用默认端口或指定端口连接远程主机。

  2. scp

    • 作用:在本地主机和远程主机间安全复制文件。

    • 示例

      scp localfile.txt user@192.168.1.100:/remote/directory/
      scp -r localdir/ user@www.example.com:/remote/directory/
      

      复制单个文件或整个目录。

  3. rsync

    • 作用:高效的文件同步和传输工具。

    • 示例

      rsync -avz /local/dir/ user@remote:/remote/dir/
      rsync -e ssh /local/file user@remote:/remote/file
      

      同步目录或复制文件。

六、数据传输与下载

  1. curl

    • 作用:与服务器进行数据交互,支持多种协议(如HTTP、FTP)。

    • 示例

      curl -O http://www.example.com/file.zip
      curl -I http://www.example.com
      

      下载文件或获取HTTP头信息。

  2. wget

    • 作用:命令行下载工具,支持递归下载。

    • 示例

      wget http://www.example.com/file.zip
      wget -r http://www.example.com/directory/
      

      下载单个文件或递归下载整个目录。

  3. ftp

    • 作用:文件传输协议客户端。

    • 示例

      ftp ftp.example.com
      

      连接到FTP服务器,进行文件上传和下载。

七、网络监控与抓包

  1. tcpdump

    • 作用:网络数据包抓取与分析工具。

    • 示例

      tcpdump -i eth0
      tcpdump -i eth0 port 80
      tcpdump -w capture.pcap
      

      抓取所有流量、特定端口流量或保存抓包数据。

  2. wireshark

    • 作用:图形化网络协议分析工具(需要图形界面)。

    • 示例

      wireshark
      

      启动Wireshark并进行数据包分析。

  3. iftop

    • 作用:实时监控网络带宽使用情况。

    • 示例

      iftop -i eth0
      

      监控指定接口的实时流量。

  4. nethogs

    • 作用:按进程统计网络带宽使用情况。

    • 示例

      nethogs
      

      显示各个进程的网络使用情况。

八、路由与防火墙

  1. route

    • 作用:查看和修改路由表(逐渐被ip route替代)。

    • 示例

      route -n
      route add -net 10.0.0.0/24 gw 192.168.1.1
      

      查看当前路由表和添加新的路由。

  2. iptables

    • 作用:配置Linux防火墙规则。

    • 示例

      iptables -L -n
      iptables -A INPUT -p tcp --dport 22 -j ACCEPT
      iptables -A INPUT -s 192.168.1.0/24 -j DROP
      

      查看规则,允许特定端口,或拒绝来自特定网段的流量。

  3. firewalld

    • 作用:动态管理防火墙,提高管理灵活性(基于iptables)。

    • 示例

      firewall-cmd --zone=public --add-port=80/tcp --permanent
      firewall-cmd --reload
      

      永久开放80端口并重新加载防火墙配置。

  4. ip route

    • 作用:查看和管理IP路由表。

    • 示例

      ip route show
      ip route add default via 192.168.1.1
      ip route del default
      

      显示、添加或删除路由。

九、DNS缓存与解析

  1. systemd-resolve

    • 作用:管理和查询systemd的DNS解析器。

    • 示例

      systemd-resolve --status
      systemd-resolve www.example.com
      

      查看DNS配置状态或解析域名。

  2. dig

    • 作用:详细查询DNS记录。

    • 示例

      dig www.example.com
      dig MX example.com
      dig @8.8.8.8 www.example.com
      

      查询A记录、MX记录,或使用指定的DNS服务器。

十、其他实用命令

  1. arp

    • 作用:查看和管理ARP缓存表。

    • 示例

      arp -a
      arp -d 192.168.1.1
      arp -s 192.168.1.10 00:11:22:33:44:55
      

      查看所有ARP条目,删除或添加静态ARP条目。

  2. hostname

    • 作用:查看或设置主机名。

    • 示例

      hostname
      hostname new-hostname
      

      查看当前主机名或设置新的主机名。

  3. hostnamectl

    • 作用:使用systemd管理主机名以及其他系统信息。

    • 示例

      hostnamectl status
      hostnamectl set-hostname new-hostname
      

      查看状态或设置新主机名。

  4. nmcli

    • 作用:命令行工具,用于管理NetworkManager。

    • 示例

      nmcli device status
      nmcli connection show
      nmcli device wifi list
      nmcli connection add type ethernet ifname eth0 con-name my-eth0
      

      查看设备状态,显示连接,扫描Wi-Fi,添加新的以太网连接。

十一、综合使用示例

假设你需要排查无法访问 www.example.com 的问题,可以按照以下步骤使用相关命令:

  1. ping 检查主机是否可达:

    ping -c 4 www.example.com
    
  2. 使用 traceroute 跟踪路由路径,找出中断点:

    traceroute www.example.com
    
  3. 使用 dig 检查DNS解析是否正常:

    dig www.example.com
    
  4. 使用 curl 测试HTTP响应:

    curl -I http://www.example.com
    
  5. 使用 nmap 扫描目标端口是否开放:

    nmap -p 80,443 www.example.com
    
  6. 查看本地防火墙规则,确保相关端口未被阻挡:

    sudo iptables -L -n
    sudo firewall-cmd --list-all
    

网站公告

今日签到

点亮在社区的每一天
去签到