当前位置:首页 > 虚拟主机 > 正文

linux ip配置是什么,linux ip怎么设置

Linux IP 配置的核心结论:无论使用何种 Linux 发行版,IP 配置的本质都是“临时生效”与“永久持久化”两条路径的组合,临时配置用于快速验证网络,重启即失效;永久配置需要写入特定网络配置文件或使用 NetworkManager 等工具固化,掌握这两条路径,即可应对从桌面到服务器的所有 IP 配置场景。

先分清临时配置与永久配置

临时配置:使用 ip 命令或 ifconfig 命令立即修改当前内核网络参数,不写入任何文件,重启网络服务或系统后恢复原状,适合调试、测试或临时调整。

永久配置:需要修改发行版对应的配置文件(如 /etc/network/interfaces、/etc/sysconfig/network-scripts/ifcfg-)或使用 NetworkManager 的 nmcli 工具,将设置固化,使系统每次启动时自动应用。

专业建议:生产环境永远使用永久配置,并配合配置文件版本管理,临时命令只用于应急排障,避免因忘记回滚导致网络配置漂移。

临时配置 IP 的两种命令

使用 ip 命令(现代标准)

# 为 eth0 配置静态 IP,掩码 24 位 sudo ip addr add 192.168.1.100/24 dev eth0 # 删除 IP sudo ip addr del 192.168.1.100/24 dev eth0 # 启用网卡 sudo ip link set eth0 up

使用 ifconfig 命令(老牌工具)

sudo ifconfig eth0 192.168.1.100 netmask 255.255.255.0 up

注意:ifconfig 已逐渐被淘汰,部分新版系统未预装,建议优先使用 ip 命令,临时配置不写路由,如需添加默认网关,需要额外执行:

sudo ip route add default via 192.168.1.1

永久配置 IP:按发行版分类详解

Debian / Ubuntu 系列

从 Ubuntu 18.04 开始,默认使用 Netplan,而传统方式仍兼容

/etc/network/interfaces,建议按系统版本选择。

传统方式(适用于 Debian 全系及 Ubuntu 旧版):

linux ip配置是什么,linux ip怎么设置 第1张

示例:

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 114.114.114.114

保存后执行 sudo systemctl restart networking 或重启系统。

Netplan 方式(Ubuntu 18.04+):

sudo vim /etc/netplan/01-netcfg.yaml

示例:

network: version: 2 ethernets: eth0: dhcp4: no addresses: - 192.168.1.100/24 routes: - to: default via: 192.168.1.1 nameservers: addresses: [8.8.8.8, 114.114.114.114]

应用配置:

sudo netplan apply

重点:Netplan 使用 YAML 语法,注意缩进,配置错误会导致网络不可用,建议修改后先执行 sudo netplan try 验证,超时自动回滚,避免锁死远程会话。

linux ip配置是什么,linux ip怎么设置 第2张

RHEL / CentOS / Rocky Linux 系列

使用 nmcli 或直接编辑 ifcfg 文件,推荐 nmcli,因为它是 NetworkManager 的标准命令行工具,支持动态应用。

使用 nmcli 配置静态 IP

# 为 eth0 配置静态 IP 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 114.114.114.114" sudo nmcli con mod eth0 ipv4.method manual # 重新激活连接 sudo nmcli con up eth0

编辑 ifcfg 文件方式

sudo vim /etc/sysconfig/network-scripts/ifcfg-eth0

示例:

TYPE=Ethernet BOOTPROTO=none NAME=eth0 DEVICE=eth0 ONBOOT=yes IPADDR=192.168.1.100 PREFIX=24 GATEWAY=192.168.1.1 DNS1=8.8.8.8 DNS2=114.114.114.114

重启网络:sudo systemctl restart network 或 nmcli con reload。

linux ip配置是什么,linux ip怎么设置 第3张

通用方法:直接使用 nmcli 设置 DHCP

如果需要从 DHCP 获取 IP,只需将 ipv4.method 改为 auto:

sudo nmcli con mod eth0 ipv4.method auto sudo nmcli con up eth0

常见问题与专业解决方案

配置后 IP 不生效

  • 检查网卡是否被 NetworkManager 或 systemd-networkd 管理,冲突时优先使用系统默认的网络管理工具。
  • 执行 ip addr show 查看网卡状态,确认是否处于 UP 状态。
  • 检查 /etc/resolv.conf 是否正确写入 DNS,若被覆盖,可能是 systemd-resolved 或 dhclient 干预。

多网卡网关优先级冲突

当系统存在多个网卡时,默认路由可能被错误指向,使用 ip route show 查看路由表,通过 ip route del default 删除多余网关,再手动添加唯一默认路由。

西西云经验案例

西西云提供的 Linux 云服务器默认使用 DHCP 获取内网 IP,但当用户需要绑定多个辅助 IP 或搭建高可用集群时,必须改为静态配置。我们的最佳实践是

  1. 在控制台获取云服务器的主私网 IP 和子网掩码(通常为 255.255.255.0)。
  2. 在系统内使用 nmcli 或网卡配置文件,将 IPADDR 设置为主私网 IP,不要随意修改,否则会丢失原有外网访问。
  3. 对于辅助 IP,直接在 ip addr add 中添加,并写入网卡配置文件的 IPADDR2、IPADDR3 字段,实现永久生效。
  4. 配置完成后,使用另一台机器测试连通性,避免因误操作导致远程连接断开,如果断开,可通过西西云 VNC 登录控制台修复。

曾有一位客户在 CentOS 7 上手动配置了错误的 GATEWAY

指向内网其他主机,导致所有外网流量被黑洞,通过 VNC 进入后,我们删除了错误网关,并将 GATEWAY 改回控制台显示的默认网关,最终恢复。关键教训:云服务器与物理机不同,网关地址必须严格参考云平台控制台,禁止自行猜测。

相关问答

问题 1:为什么我配置的静态 IP 重启后丢失?

解答:这类情况几乎可以确定你只使用了 ip addr add 等临时命令,没有写入配置文件,永久配置必须根据你的发行版选择正确方法:Debian 系写入 /etc/network/interfaces 或 Netplan 的 YAML;RHEL 系写入 ifcfg 文件或使用 nmcli con mod 修改连接配置,同时检查网卡是否设为 ONBOOT=yes(RHEL)或 auto(Debian),否则重启后网卡不会自动加载配置。

问题 2:配置静态 IP 后无法访问外网,但内网正常,可能是什么原因?

解答:优先检查两个核心点:默认网关DNS,执行 ip route show default 确认网关存在且指向正确的路由器或云平台默认网关,如果网关缺失,添加 route add default gw 你的网关地址;如果是 DNS 问题,编辑 /etc/resolv.conf 写入可用的 DNS 服务器,并确保配置文件中的 DNS 设置已生效,查看防火墙规则,iptables -L 确认是否拦截了出站流量,但通常无法访问外网时,网关错误占九成以上。

结语与互动

Linux IP 配置本身不复杂,核心在于理解“临时与永久”的差异,以及你所使用的发行版的配置体系,建议先从 ip 命令开始实践,再逐步掌握各自的配置文件,如果你在配置过程中遇到任何奇怪的问题,欢迎在评论区描述你的系统版本、网卡名称和报错信息,我会尽快帮你分析,希望这篇文章能帮你彻底搞定 IP 配置,从此不再被网络问题绊住手脚。

0