Linux中配置网络的常用命令及工具如下:
1. ifconfig(传统命令,逐步被淘汰)
查看和配置网络接口信息,例如:
bash
ifconfig eth0 192.168.1.100 netmask 255.255.255.0
需要安装`net-tools`包,但现代系统推荐使用`ip`命令。
2. ip(推荐,功能更强大)
- 查看网络接口:
bash
ip addr show
- 配置IP地址:
bash
ip addr add 192.168.1.100/24 dev eth0
- 管理路由:
bash
ip route add default via 192.168.1.1
3. nmcli(NetworkManager命令行工具)
- 查看连接:
bash
nmcli connection show
- 配置静态IP:
bash
nmcli con mod eth0 ipv4.addresses 192.168.1.100/24 ipv4.gateway 192.168.1.1 ipv4.dns "8.8.8.8"
- 重启连接:
bash
nmcli con up eth0
4. nmtui(NetworkManager文本界面)
提供交互式界面配置网络:
bash
nmtui
5. dhclient(动态获取IP)
释放并重新获取DHCP地址:
bash
dhclient -r eth0 && dhclient eth0
6. route(传统路由配置)
查看或修改路由表:
bash
route -n
route add default gw 192.168.1.1
7. systemd-networkd(现代系统服务)
配置文件位于`/etc/systemd/network/`,例如:
ini
[Match]
Name=eth0
[Network]
Address=192.168.1.100/24
Gateway=192.168.1.1
DNS=8.8.8.8
需启用服务:
bash
systemctl enable --now systemd-networkd
8. resolv.conf(DNS配置)
手动修改DNS服务器:
bash
echo "nameserver 8.8.8.8" > /etc/resolv.conf
注意:在NetworkManager管理的系统中可能被覆盖,建议通过`nmcli`配置。
9. ethtool(网络接口诊断)
查看网卡信息与驱动:
bash
ethtool eth0
10. ss/netstat(网络连接监控)
查看端口和连接状态:
bash
ss -tulnp
netstat -tulnp
扩展知识:
持久化配置:
临时配置重启后失效,持久化需写入配置文件(如`/etc/network/interfaces`或`/etc/sysconfig/network-scripts/ifcfg-eth0`)。
网络命名空间:
高级功能如容器隔离可通过`ip netns`实现。
无线网络:
使用`iwconfig`或`wpa_supplicant`管理Wi-Fi。
根据发行版和网络管理模式(NetworkManager/systemd-networkd)选择合适工具。