文档首页> Linux命令> linux查看ip配置文件

linux查看ip配置文件

发布时间:2025-12-03 00:11       

在 Linux 下「怎么看 IP 配置文件」,核心是两步:
1)先搞清楚当前发行版和网络管理方式;2)再去对应目录里查看配置文件。不同系的路径不一样,这点一定要分清 👍


一、先确认当前 IP(方便对照配置)📌

ip addr show
  • 查看所有网卡的 IP、子网掩码、状态(UP/DOWN 等)。
  • 一般重点看 eth0ens3ens160ens18 等类似名字的网卡。
ip route
  • 查看默认网关、路由信息,后面对照配置文件时好验证。

二、常见发行版的 IP 配置文件路径

1. Debian / Ubuntu 传统方式(ifupdown)

老版本或手动改回传统方式时,路径一般是:

cat /etc/network/interfaces
ls /etc/network/interfaces.d/
  • /etc/network/interfaces:主配置文件,常见写法如 iface eth0 inet static 等。
  • /etc/network/interfaces.d/:拆分出来的子配置文件,方便多网卡管理。

如果你在这里看到静态 IP 配置,就说明系统是用 ifupdown 管网卡。


2. Ubuntu 18.04+ / 20.04 / 22.04 常见:Netplan 🧩

新版本服务器默认多是 netplan:

ls /etc/netplan/
cat /etc/netplan/*.yaml
  • 所有网卡 IP、网关、DNS 大多写在 *.yaml 里,比如 01-netcfg.yaml00-installer-config.yaml
  • 修改后用下面命令生效:
sudo netplan apply

这套是现在 Ubuntu 服务器环境里最常见的方式之一。


3. CentOS 7 / 老的 RHEL 系:network-scripts

如果你在用 CentOS 7 或类似系统,传统配置在这里:

cd /etc/sysconfig/network-scripts/
ls ifcfg-*
cat ifcfg-eth0
  • 文件名一般是 ifcfg-eth0ifcfg-ens33 等。
  • 里面关键字段有:
    • BOOTPROTO=static/dhcp
    • IPADDR=...
    • PREFIX= 或 NETMASK=...
    • GATEWAY=...
    • DNS1=... 等。

这类配置改完后,一般要重启对应网卡或网络服务,例如:

sudo systemctl restart network

4. CentOS 8+ / RHEL 8+ / 现代发行版:NetworkManager

新一点的系统,虽然还可能留着 network-scripts 目录,但真正控制 IP 的往往是 NetworkManager:

ls /etc/NetworkManager/system-connections/
cat /etc/NetworkManager/system-connections/*.nmconnection
  • .nmconnection 文件采用 key=value 格式,里边有 [ipv4][ipv6] 等小节。
  • 通常建议用命令行工具管理,而不是直接改文件:
nmcli connection show
nmcli connection show "你的连接名"

这样能防止手工编辑出语法错误。


5. systemd-networkd 场景(少量精简服务器会用)⚙️

如果你的系统启用了 systemd-networkd

ls /etc/systemd/network/
cat /etc/systemd/network/*.network
  • .network 文件里会指定网卡匹配规则、静态 IP、路由等。
  • 修改后一般需要重启服务:
sudo systemctl restart systemd-networkd

三、如何快速判断自己该看哪一套文件?🕵️

可以按这个小 checklist 来:

  1. 看发行版:

    cat /etc/os-release
    
    • Ubuntu / Debian:重点看 /etc/netplan/ 和 /etc/network/interfaces
    • CentOS / RHEL:重点看 /etc/sysconfig/network-scripts/ 和 /etc/NetworkManager/system-connections/
  2. 看当前谁在管网络:

    ps aux | grep -E 'NetworkManager|systemd-networkd' | grep -v grep
    
    • 有 NetworkManager:多半配置在 system-connections 或用 nmcli 管理。
    • 有 systemd-networkd:多半是 /etc/systemd/network/*.network

四、小结

一句话串起来: