Linux 手动配置网络接口:静态IP与网关设置实战
在 Linux 系统中,网络通常由 NetworkManager 或 DHCP 自动管理。但在某些场景中,例如:
- 服务器部署
- 网络实验环境
- 故障排查
- 运维调试
我们需要手动配置网络接口,例如设置静态 IP 和默认网关。
本文通过一个简单示例,演示如何使用 ifconfig/route 传统命令和 ip 现代命令完成网络配置。
一、传统命令配置示例
以下是使用 ifconfig 和 route 的完整配置命令集,可直接执行完成静态网络配置:
# 停止自动网络管理服务
systemctl stop NetworkManager
# 关闭目标网卡接口
ifconfig enP1p24s0 down
# 设置静态IP和子网掩码
ifconfig enP1p24s0 172.16.1.11 netmask 255.255.255.0
# 添加默认网关
route add default gw 172.16.1.254
# 启动网卡接口使配置生效
ifconfig enP1p24s0 up
1.1 停止 NetworkManager
systemctl stop NetworkManager
在多数 Linux 发行版中,NetworkManager 负责自动管理网络(自动获取DHCP、自动重连等),手动配置前需停止该服务,避免配置被自动覆盖。
若需永久禁用(开机不启动):
systemctl disable NetworkManager
1.2 关闭网络接口
ifconfig enP1p24s0 down
enP1p24s0 是 Linux 可预测网络接口名(代表具体网卡),关闭接口的目的:
- 清除原有网络配置
- 避免IP冲突
- 为重新配置做准备
1.3 配置静态IP地址
ifconfig enP1p24s0 172.16.1.11 netmask 255.255.255.0
配置结果:
| 项目 | 值 |
|---|---|
| IP地址 | 172.16.1.11 |
| 子网掩码 | 255.255.255.0 |
| 网络段 | 172.16.1.0/24 |
该子网可用地址范围:172.16.1.1 - 172.16.1.254
1.4 配置默认网关
route add default gw 172.16.1.254
默认网关用于转发非本地网络的数据包,配置后系统访问外网/其他网段时,会将数据包发送到 172.16.1.254。
查看路由表验证:
route -n
1.5 启动网络接口
ifconfig enP1p24s0 up
启动接口后,网卡将应用以下配置:
- IP:
172.16.1.11 - 子网掩码:
255.255.255.0 - 网关:
172.16.1.254
二、验证网络配置
配置完成后,通过以下命令验证有效性:
2.1 查看IP配置
# 传统方式
ifconfig
# 现代方式
ip addr
2.2 查看路由配置
# 传统方式
route -n
# 现代方式
ip route
2.3 测试连通性
# 测试网关连通性
ping 172.16.1.254
# 测试外网连通性(可选)
ping 8.8.8.8
能ping通网关说明基础配置正确。
三、现代Linux推荐配置方式
注意:较新的 Linux 系统中,ifconfig/route 已被 iproute2 工具集的 ip 命令取代,以下是等价的现代写法:
# 关闭网卡
ip link set enP1p24s0 down
# 设置静态IP(/24 等价于子网掩码255.255.255.0)
ip addr add 172.16.1.11/24 dev enP1p24s0
# 添加默认网关
ip route add default via 172.16.1.254
# 启动网卡
ip link set enP1p24s0 up
ip 命令是目前 Linux 官方推荐的网络管理工具,功能更全面、兼容性更好。
四、总结
Linux 手动配置网络接口的核心流程:
- 停止自动网络管理服务(NetworkManager),避免配置被覆盖;
- 关闭网卡接口,清除原有配置;
- 设置静态IP和子网掩码;
- 配置默认网关,实现跨网段访问;
- 启动网卡接口,使配置生效;
- 通过 ping/ip/route 命令验证配置有效性。
掌握这些基础命令,既能深入理解 Linux 网络配置原理,也能高效完成服务器部署、网络调试等运维工作。