在Linux系统中修改IP地址后,需根据不同的网络管理工具和发行版选择对应的保存方法,以下是详细步骤和扩展知识:
1. 临时修改IP(重启失效)
使用`ip`或`ifconfig`命令临时修改IP(部分系统需安装`net-tools`):
bash
sudo ip addr add 192.168.1.100/24 dev eth0 # 添加IP
sudo ip link set eth0 up # 启用网卡
或:
bash
sudo ifconfig eth0 192.168.1.100 netmask 255.255.255.0
临时修改的IP在重启后会丢失,需通过配置文件永久保存。
2. 永久修改IP(不同发行版配置文件)
Debian/Ubuntu(使用`netplan`或`/etc/network/interfaces`)
Netplan(默认工具):
编辑YAML配置文件(如`/etc/netplan/01-netcfg.yaml`),示例:
yaml
network:
version: 2
ethernets:
eth0:
dhcp4: no
addresses: [192.168.1.100/24]
gateway4: 192.168.1.1
nameservers:
addresses: [8.8.8.8, 8.8.4.4]
应用配置:
bash
sudo netplan apply
传统interfaces文件(旧版):
编辑`/etc/network/interfaces`:
bash
auto eth0
iface eth0 inet static
address 192.168.1.100
netmask 255.255.255.0
gateway 192.168.1.1
重启网络服务:
bash
sudo systemctl restart networking # 或执行`sudo /etc/init.d/networking restart`
RHEL/CentOS(使用NetworkManager或ifcfg文件)
NetworkManager(推荐):
使用`nmtui`或`nmcli`工具:
bash
sudo nmtui # 图形化界面修改
或命令行:
bash
sudo nmcli con mod eth0 ipv4.addresses 192.168.1.100/24
sudo nmcli con mod eth0 ipv4.gateway 192.168.1.1
sudo nmcli con up eth0
ifcfg文件:
编辑`/etc/sysconfig/network-scripts/ifcfg-eth0`:
ini
BOOTPROTO=static
IPADDR=192.168.1.100
NETMASK=255.255.255.0
GATEWAY=192.168.1.1
ONBOOT=yes
重启网络:
bash
sudo systemctl restart network
Arch Linux(使用`systemd-networkd`或`Netctl`)
systemd-networkd:
创建配置文件`/etc/systemd/network/20-wired.network`:
ini
[Match]
Name=eth0
[Network]
Address=192.168.1.100/24
Gateway=192.168.1.1
DNS=8.8.8.8
启用服务:
bash
sudo systemctl enable --now systemd-networkd
3. 验证与故障排除
检查IP是否生效:
bash
ip addr show eth0
测试网络连通性:
bash
ping 8.8.8.8
若DNS失效,检查`/etc/resolv.conf`是否包含正确的DNS服务器。
4. 扩展知识
多IP绑定:通过`ip addr add`或配置文件可为单网卡绑定多个IP。
DHCP保留IP:在路由器中设置MAC与IP绑定,配合客户端DHCP配置。
网络命名空间:高级用户可创建隔离的网络环境测试配置。
Firewalld/iptables:修改IP后需检查防火墙规则是否允许新IP的流量。
修改IP后务必确认相关服务(如SSH)的访问权限,避免因配置错误导致失联。
查看详情
查看详情