以下是Linux系统中常用的50个网络管理命令,涵盖网络接口配置、连接测试、流量分析、路由管理、防火墙等多方面的网络管理任务:
网络接口配置和管理
ifconfig:查看和配置网络接口(已被ip命令替代)。- 示例:
ifconfig eth0 up启用网络接口。
- 示例:
ip:管理网络接口、路由、设备和隧道。- 示例:
ip addr查看接口的IP地址。
- 示例:
ip link set:启用/禁用网络接口。- 示例:
ip link set eth0 up启用接口。
- 示例:
ip addr add/del:添加或删除接口的IP地址。- 示例:
ip addr add 192.168.1.10/24 dev eth0。
- 示例:
nmcli:NetworkManager的命令行工具,管理网络连接。- 示例:
nmcli device status查看设备状态。
- 示例:
nmtui:NetworkManager的图形化用户界面,配置网络。- 示例:
nmtui启动图形配置界面。
- 示例:
ethtool:查看和修改网络接口的硬件设置。- 示例:
ethtool eth0查看接口设置。
- 示例:
ip link show:显示网络接口的状态。- 示例:
ip link show列出所有接口。
- 示例:
ip link set dev:修改接口的MAC地址。- 示例:
ip link set dev eth0 address 12:34:56:78:90:AB。
- 示例:
systemctl restart NetworkManager:重启NetworkManager服务。
网络连接测试
ping:测试与目标主机的网络连通性。
- 示例:
ping google.com。
ping6:测试IPv6地址的网络连通性。
- 示例:
ping6 ipv6.google.com。
traceroute:跟踪到目标主机的数据包路径。
- 示例:
traceroute google.com。
tracepath:类似traceroute,不需要超级用户权限。
- 示例:
tracepath google.com。
mtr:结合ping和traceroute的功能进行网络诊断。
- 示例:
mtr google.com。
curl:发送HTTP请求以测试网站的连接。
- 示例:
curl http://example.com。
wget:从网络下载文件或网页。
- 示例:
wget http://example.com/file.zip。
telnet:测试TCP连接的开放性(某些系统需安装)。
- 示例:
telnet google.com 80。
nc(Netcat):创建TCP/UDP连接以测试端口。
- 示例:
nc -zv google.com 80。
dig:查询DNS信息。
- 示例:
dig google.com。
nslookup:查询DNS记录。
- 示例:
nslookup google.com。
host:解析域名为IP地址。
- 示例:
host google.com。
网络流量监控
netstat:显示网络连接、路由、接口统计等(逐步被ss替代)。
- 示例:
netstat -r查看路由表。
ss:查看套接字统计信息,替代netstat。
- 示例:
ss -tuln显示监听的端口。
iftop:实时显示网络接口的带宽使用情况。
- 示例:
iftop。
nload:实时显示网络流量。
- 示例:
nload。
vnstat:显示网络流量统计。
- 示例:
vnstat -d查看日流量。
tcpdump:捕获并分析网络数据包。
- 示例:
tcpdump -i eth0捕获eth0上的数据包。
nethogs:显示每个进程的网络带宽使用情况。
- 示例:
nethogs。
iptraf:交互式的网络监控工具。
- 示例:
iptraf。
bmon:监控网络带宽使用情况。
- 示例:
bmon。
sar:收集和报告系统活动,包括网络流量。
- 示例:
sar -n DEV 1每秒显示一次网络设备活动。
路由和防火墙
ip route:显示或操作路由表。
- 示例:
ip route查看路由表。
route:查看或修改IP路由表(已被ip命令替代)。
- 示例:
route -n显示路由表。
ip neigh:管理邻居缓存(ARP表)。
- 示例:
ip neigh show。
arp:显示和管理ARP缓存。
- 示例:
arp -a查看ARP缓存。
iptables:配置IPv4防火墙规则。
- 示例:
iptables -L列出防火墙规则。
ip6tables:配置IPv6防火墙规则。
- 示例:
ip6tables -L。
firewall-cmd:使用firewalld管理防火墙。
- 示例:
firewall-cmd --list-all。
ufw:简单易用的防火墙工具。
- 示例:
ufw status显示防火墙状态。
其他网络相关工具
sshd:启动或管理SSH服务。
- 示例:
systemctl restart sshd。
scp:通过SSH传输文件。
- 示例:
scp file.txt user@remote:/path。
rsync:用于同步文件和目录。
- 示例:
rsync -avz file.txt user@remote:/path。
whois:查询域名注册信息。
- 示例:
whois google.com。
nmap:网络扫描工具,用于发现主机和服务。
- 示例:
nmap 192.168.1.0/24。
hostname:显示或设置主机名。
- 示例:
hostnamectl set-hostname newhostname。
iwconfig:管理无线网络接口。
- 示例:
iwconfig wlan0查看无线接口状态。
iwlist:扫描无线网络。
- 示例:
iwlist wlan0 scan。
wpa_supplicant:配置无线网络连接。
- 示例:
wpa_supplicant -B -i wlan0 -c /etc/wpa_supplicant.conf。
dhclient:获取或释放DHCP分配的IP地址。
- 示例:
dhclient eth0请求新的IP地址。
总结:
这50个命令几乎涵盖了Linux网络管理的所有重要功能,包括网络接口管理、连接测试、流量监控、路由配置、防火墙管理和网络诊断等。熟练掌握这些命令将大大提升Linux系统的网络管理能力。
除教程外,本网站大部分文章来自互联网,如果有内容冒犯到你,请联系我们删除!
