在Linux系统中设置网卡是网络管理的基础操作,无论是配置静态IP、动态获取地址(DHCP),还是设置DNS和网关,都需要通过命令行或图形界面完成,以下为详细操作指南,涵盖主流方法及注意事项,确保安全性和可操作性。
命令行设置(推荐)
查看当前网卡信息
ip addr show # 显示所有网卡名称(如eth0、ens33) ifconfig # 旧版工具(部分系统需安装net-tools)
输出示例:
2: ens33: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc fq_codel state UP group default qlen 1000
link/ether 00:0c:29:xx:xx:xx brd ff:ff:ff:ff:ff:ff
inet 192.168.1.10/24 brd 192.168.1.255 scope global dynamic noprefixroute ens33
临时设置IP地址(重启失效)
sudo ip addr add 192.168.1.100/24 dev ens33 # 添加IP sudo ip link set ens33 up # 启用网卡 sudo ip route add default via 192.168.1.1 # 设置默认网关
永久配置静态IP(修改配置文件)
步骤:
- 编辑网卡配置文件(路径因发行版而异):
- Debian/Ubuntu:
/etc/network/interfaces
- CentOS/RHEL/Rocky Linux:
/etc/sysconfig/network-scripts/ifcfg-ens33
- Debian/Ubuntu:
- 示例配置(CentOS):
DEVICE=ens33 BOOTPROTO=static # 静态IP(dhcp表示动态获取) ONBOOT=yes # 开机自启 IPADDR=192.168.1.100 NETMASK=255.255.255.0 GATEWAY=192.168.1.1 DNS1=8.8.8.8 # DNS服务器
- 重启网络服务:
sudo systemctl restart NetworkManager # 主流发行版 sudo systemctl restart networking # Debian/Ubuntu旧版
设置DNS
编辑/etc/resolv.conf
(临时):
nameserver 8.8.8.8 nameserver 1.1.1.1
永久生效:在网卡配置文件中添加DNS1
和DNS2
(见上一步)。
图形界面设置(适合桌面用户)
-
GNOME桌面(Ubuntu/Fedora):
- 右上角网络图标 → 有线设置 → 齿轮图标
- IPv4选项卡 → 选择”Manual”(手动)→ 填写IP、子网掩码、网关、DNS
- 点击”Apply”保存
-
KDE Plasma(Kubuntu):
- 系统设置 → 网络 → 有线连接 → IPv4
- 方法选择”手动” → 输入地址、网关、DNS → 保存
常见问题解决
Q1:配置重启后失效?
- 原因:临时命令未保存。
解决:必须修改配置文件(如ifcfg-ens33
)并重启网络服务。
Q2:如何恢复DHCP自动获取IP?
- 配置文件中设置:
BOOTPROTO=dhcp IPADDR= # 删除静态IP行 NETMASK= # 删除子网掩码
Q3:网络服务重启失败?
- 检查配置文件语法:
- 路径是否正确(如
ifcfg-ens33
的ens33
需匹配实际网卡名) - 避免多余空格或符号
- 路径是否正确(如
- 查看日志:
journalctl -xe -u NetworkManager
Q4:多网卡如何绑定?
使用bonding
驱动:
# 配置从属网卡(编辑ifcfg-eth1、ifcfg-eth2) MASTER=bond0 SLAVE=yes
注意事项
- 权限要求:所有操作需
root
权限(使用sudo
)。 - 备份配置:修改前备份文件:
sudo cp /etc/network/interfaces /etc/network/interfaces.bak
- 测试连通性:
ping 8.8.8.8 # 测试外网 ip route show # 检查网关 nslookup example.com # 验证DNS
- 风险提示:错误配置可能导致网络中断,建议在物理控制台操作。
Linux网卡设置的核心是理解IP、网关、DNS的关系,并通过命令行(ip
、配置文件)或图形工具实现,生产环境中推荐使用永久配置文件,避免重启失效,对于复杂需求(如VLAN、网桥),可进一步研究netplan
(Ubuntu)或nmcli
(NetworkManager命令行工具)。
引用说明参考Linux官方文档(kernel.org)、Red Hat系统管理指南及Ubuntu Server文档,确保方法通用且符合最佳实践,操作前请确认您的发行版版本及网络环境。
原创文章,发布者:酷番叔,转转请注明出处:https://cloud.kd.cn/ask/7617.html