12 个流行的 Linux 网络命令及其使用方法

在Linux系统中,网络管理是系统管理员和开发者的核心技能之一。无论是排查网络问题、监控流量,还是配置网络接口,Linux提供了众多强大的命令行工具。这些工具功能强大且灵活,能够帮助用户高效地完成网络相关的任务。本文将深入介绍12个流行的Linux网络命令,涵盖其基本用法、常见场景和高级技巧,旨在帮助读者全面掌握Linux网络管理技能。

1. ping - 测试网络连通性

ping 是最常用的网络诊断工具,用于测试主机与目标地址之间的连通性。它通过发送ICMP(Internet控制消息协议)回显请求数据包并等待响应来判断网络是否可达。

基本用法

ping [选项] 目标地址

常用选项

  • -c 次数:指定发送的请求次数。
  • -i 间隔:设置每次请求的间隔时间(秒)。
  • -s 字节数:设置数据包大小。

示例

ping -c 4 baidu.com

此命令向 baidu.com 发送4次ICMP请求,并显示每次的响应时间。

高级用法

  • 检查网络延迟:ping -i 0.2 baidu.com(每0.2秒发送一次请求)。
  • 测试大包传输:ping -s 1000 baidu.com(发送1000字节的数据包)。

注意事项

  • 某些服务器可能禁用ICMP,导致 ping 无响应,但并不代表网络不可达。
  • 使用 ping -f(洪水模式)需谨慎,可能引发网络安全警报。

2. ip - 管理网络接口和路由

ip 是现代Linux系统中用于配置网络接口、路由表和策略的强大工具,取代了过时的 ifconfig

基本用法

ip [对象] [命令]

常用对象

  • link:管理网络接口。
  • addr:管理IP地址。
  • route:管理路由表。

示例

  • 查看网络接口:ip link show
  • 为接口分配IP地址:ip addr add 192.168.1.100/24 dev eth0
  • 查看路由表:ip route show

高级用法

  • 启用/禁用接口:ip link set eth0 upip link set eth0 down
  • 添加默认网关:ip route add default via 192.168.1.1

注意事项

  • ip 命令的更改通常是临时的,重启后失效,需写入配置文件(如 /etc/network/interfaces)。
  • 确保对网络配置有充分了解,避免误操作导致网络中断。

3. ifconfig - 传统网络接口配置工具

ifconfig 是早期用于配置和查看网络接口的工具,尽管已被 ip 取代,但在许多旧系统上仍广泛使用。

基本用法

ifconfig [接口] [选项]

常用选项

  • up:激活网络接口。
  • down:禁用网络接口。
  • 地址:设置IP地址。

示例

  • 查看所有接口:ifconfig -a
  • 配置IP地址:ifconfig eth0 192.168.1.100 netmask 255.255.255.0

高级用法

  • 设置MTU(最大传输单元):ifconfig eth0 mtu 1400
  • 查看接口统计信息:ifconfig eth0 | grep "RX packets"

注意事项

  • 许多现代发行版已不再默认安装 ifconfig,需安装 net-tools 包。
  • 推荐使用 ip 命令以获得更现代化的功能。

4. netstat - 显示网络状态和统计信息

netstat 用于显示网络连接、路由表和接口统计信息,是网络故障排查的常用工具。

基本用法

netstat [选项]

常用选项

  • -a:显示所有连接(包括监听状态)。
  • -t:显示TCP连接。
  • -u:显示UDP连接。
  • -r:显示路由表。

示例

  • 查看所有活动连接:netstat -tunap
  • 查看路由表:netstat -r

高级用法

  • 查找特定端口:netstat -tunlp | grep 80
  • 统计连接状态:netstat -s

注意事项

  • netstat 在新系统中逐渐被 ss 取代。
  • 需安装 net-tools 包。

5. ss - 现代化的网络连接查看工具

ssnetstat 的现代替代品,性能更高,输出更简洁,用于显示网络套接字信息。

基本用法

ss [选项]

常用选项

  • -t:显示TCP套接字。
  • -u:显示UDP套接字。
  • -l:显示监听套接字。
  • -p:显示关联进程。

示例

  • 查看所有TCP连接:ss -t
  • 查看监听端口:ss -tuln

高级用法

  • 过滤特定端口:ss -t 'dst :80'
  • 显示进程ID:ss -tlp

注意事项

  • ss 的输出更简洁,适合脚本处理。
  • 确保用户有足够权限查看进程信息。

6. nslookup - 查询DNS记录

nslookup 用于查询DNS记录,检查域名解析是否正确。

基本用法

nslookup [域名] [DNS服务器]

示例

  • 查询域名:nslookup google.com
  • 指定DNS服务器:nslookup google.com 8.8.8.8

高级用法

  • 查询特定记录类型:nslookup -type=MX google.com(查询邮件交换记录)
  • 进入交互模式:nslookup

注意事项

  • nslookup 的输出较为简单,适合快速查询。
  • 对于复杂DNS查询,推荐使用 dig

7. dig - 高级DNS查询工具

dig 是一个功能强大的DNS查询工具,提供详细的解析信息。

基本用法

dig [域名] [选项]

常用选项

  • +short:简化输出。
  • @服务器:指定DNS服务器。
  • 类型:查询特定记录类型(如A、MX、NS)。

示例

  • 查询域名:dig google.com
  • 查询MX记录:dig google.com MX
  • 使用Google DNS:dig @8.8.8.8 google.com

高级用法

  • 跟踪解析过程:dig +trace google.com
  • 批量查询:dig -f domains.txt

注意事项

  • dig 提供了更详细的输出,适合高级用户。
  • 需安装 dnsutils 包。

8. curl - 传输数据与测试API

curl 是一个多功能的数据传输工具,支持HTTP、HTTPS、FTP等协议,常用于测试API或下载文件。

基本用法

curl [选项] [URL]

常用选项

  • -o 文件:保存输出到文件。
  • -I:仅显示头部信息。
  • -X 方法:指定HTTP方法(如GET、POST)。

示例

  • 获取网页内容:curl https://example.com
  • 发送POST请求:curl -X POST -d "data=value" https://api.example.com

高级用法

  • 设置请求头:curl -H "Authorization: Bearer token" https://api.example.com
  • 下载文件:curl -o file.zip https://example.com/file.zip

注意事项

  • curl 支持大量协议,适合复杂网络任务。
  • 使用 -k 忽略SSL验证需谨慎。

9. wget - 下载文件

wget 是一个专注于文件下载的工具,支持HTTP、HTTPS和FTP。

基本用法

wget [选项] [URL]

常用选项

  • -O 文件:指定输出文件名。
  • -c:断点续传。
  • -r:递归下载。

示例

  • 下载文件:wget https://example.com/file.zip
  • 递归下载网站:wget -r https://example.com

高级用法

  • 限速下载:wget --limit-rate=200k https://example.com/file.zip
  • 后台下载:wget -b https://example.com/file.zip

注意事项

  • 递归下载可能消耗大量资源,需谨慎使用。
  • 确保目标服务器允许下载。

10. traceroute - 跟踪网络数据包路径

traceroute 用于跟踪数据包从本地到目标主机的路径,显示每一跳的延迟。

基本用法

traceroute [选项] 目标地址

常用选项

  • -n:仅显示IP地址,不解析主机名。
  • -m 跳数:设置最大跳数。

示例

  • 跟踪路径:traceroute google.com
  • 限制最大跳数:traceroute -m 10 google.com

高级用法

  • 使用TCP协议:traceroute -T google.com
  • 指定端口:traceroute -p 80 google.com

注意事项

  • 某些路由器可能禁用ICMP,导致部分跳跃无响应。
  • 需安装 traceroute 包。

11. nmap - 网络扫描与安全审计

nmap 是一个强大的网络扫描工具,用于发现主机、端口和服务。

基本用法

nmap [选项] 目标地址

常用选项

  • -sS:TCP SYN扫描。
  • -O:操作系统检测。
  • -p 端口:指定扫描端口。

示例

  • 扫描主机端口:nmap 192.168.1.1
  • 扫描端口范围:nmap -p 1-1000 192.168.1.1

高级用法

  • 全面扫描:nmap -A 192.168.1.1
  • 扫描子网:nmap 192.168.1.0/24

注意事项

  • 未经授权扫描可能违法,需遵守法律和道德规范。
  • 需安装 nmap 包。

12. tcpdump - 捕获和分析网络数据包

tcpdump 是一个强大的数据包捕获工具,用于分析网络流量。

基本用法

tcpdump [选项]

常用选项

  • -i 接口:指定捕获的网络接口。
  • -w 文件:保存数据包到文件。
  • 过滤表达式:指定捕获条件。

示例

  • 捕获所有流量:tcpdump -i eth0
  • 捕获HTTP流量:tcpdump -i eth0 port 80

高级用法

  • 保存数据包:tcpdump -i eth0 -w capture.pcap
  • 读取数据包:tcpdump -r capture.pcap

注意事项

  • 需要root权限运行。
  • 需安装 tcpdump 包。
原文链接:,转发请注明来源!