在Linux系统中修改IP地址可以通过多种方式实现,具体取决于使用的网络管理工具或配置方法。以下是常见的几种方法及相关扩展知识:
1. 使用`ifconfig`命令(传统方式,已逐步被淘汰)
bash
sudo ifconfig eth0 192.168.1.100 netmask 255.255.255.0 up
`eth0`是网卡名称,需根据实际设备调整(如`ens33`、`enp0s3`等)。
此命令临时生效,重启后失效。
需要安装`net-tools`包(现代系统可能默认未安装)。
2. 使用`ip`命令(推荐,取代`ifconfig`)
bash
sudo ip addr add 192.168.1.100/24 dev eth0
sudo ip link set eth0 up
`/24`表示子网掩码`255.255.255.0`,支持CIDR表示法。
同样为临时配置,需结合持久化方法。
3. 修改配置文件(持久化配置)
Debian/Ubuntu系
编辑`/etc/network/interfaces`:
bash
sudo nano /etc/network/interfaces
添加以下内容(静态IP示例):
config
auto eth0
iface eth0 inet static
address 192.168.1.100
netmask 255.255.255.0
gateway 192.168.1.1
dns-nameservers 8.8.8.8
RHEL/CentOS/Fedora系
编辑网卡配置文件(如`/etc/sysconfig/network-scripts/ifcfg-eth0`):
config
TYPE=Ethernet
BOOTPROTO=static
IPADDR=192.168.1.100
NETMASK=255.255.255.0
GATEWAY=192.168.1.1
DNS1=8.8.8.8
ONBOOT=yes
4. 使用`nmcli`(NetworkManager命令行工具)
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 mod eth0 ipv4.dns "8.8.8.8"
sudo nmcli con up eth0
适用于动态管理网络的系统(如桌面版Linux)。
使用`nmcli connection show`查看当前连接名。
5. 使用`nmtui`(文本界面交互工具)
运行命令后通过图形化界面操作:
bash
sudo nmtui
适合不熟悉命令行的用户,配置会自动保存。
扩展知识
DHCP自动获取IP:将配置中的`static`改为`dhcp`,或使用`BOOTPROTO=dhcp`。
多IP绑定:通过`ip addr add`或配置文件添加多个IP到同一网卡。
网络服务重启:修改配置后,Debian系用`sudo systemctl restart networking`,RHEL系用`sudo systemctl restart network`。
校验配置:使用`ip a`、`route -n`和`ping`测试连通性。
NetworkManager与systemd-networkd:现代Linux可能默认使用这两者管理网络,需注意冲突。
注意:操作前建议备份配置文件,避免网络中断导致无法远程连接。