当麒麟系统找不到服务器IP地址时,先别急着重装系统,多数情况是网卡未激活、DHCP未获取到地址或NetworkManager配置冲突导致的,按本文的排查顺序操作,大概率能直接解决问题。
先说结论:找不到服务器IP,问题通常出在哪三个环节
麒麟系统(含银河麒麟、中标麒麟)基于Linux内核,网络管理逻辑和CentOS/RHEL同源,服务器IP“消失”或“找不到”,行业共识认为90%以上逃不出这三个环节:
- 物理链路层:网线松动、交换机端口未启用、光纤模块故障。
- 服务层:NetworkManager或systemd-networkd服务异常,导致IP配置未生效。
- 配置层:静态IP、子网掩码、网关写错,或DHCP池枯竭、IP冲突。
下面按从易到难的顺序,给你一套可直接落地的排查命令和修改路径。
麒麟系统找不到服务器ip地址怎么办:先做基础自查
登录服务器本地终端(不是远程登录,否则断连就尴尬了),执行以下命令:
ip addr show
观察输出结果,重点看网卡名(通常是ens33、eth0、eno1)下方的state状态:
-
如果显示
state DOWN,说明网卡未启用,执行:sudo ip link set ens33 up
-
如果显示
state UP但没有inet字段(即没有IPv4地址),说明DHCP没拿到地址或静态配置缺失。
查看路由表是否正常
ip route
正常情况应该有一条default via 网关IP dev 网卡名,如果只有直连路由没有默认路由,说明网关配置丢失,服务器跨网段访问必然失败。
检查DNS解析状态
cat /etc/resolv.conf
如果DNS指向了不可达的IP(比如内网迁移后遗留的旧DNS),就解释了“能ping通网关但打不开网页”的诡异现象。
麒麟系统网络配置命令与图形化设置方法
如果你用的是银河麒麟桌面版,可以直接走图形化路径,适合不熟悉终端的运维同事:
- 右键点击任务栏右下角的
网络图标
,选择“网络设置”。 - 点击“有线连接”右侧的齿轮图标。
- 在“IPv4”选项卡中,手动切换为“手动”,填入规划好的静态IP、子网掩码、网关。
- 点击“应用”,再重新开关一次网卡,让配置生效。
但服务器版(无桌面环境)才是企业里的常见场景,必须掌握命令行方案,麒麟系统网络配置命令主要围绕nmcli和nmtui:
# 查看所有连接 nmcli connection show # 修改现有连接的IP方式为手动 nmcli connection modify "有线连接" ipv4.method manual ipv4.addresses 192.168.1.100/24 ipv4.gateway 192.168.1.1 ipv4.dns 223.5.5.5 # 重新激活连接 nmcli connection up "有线连接"
执行完ip addr show确认IP已经绑定,如果nmcli命令提示找不到,说明NetworkManager服务未运行,先运行systemctl start NetworkManager。
银河麒麟ip地址设置方法:静态配置不生效的三大关键点
很多人遇到“IP明明改了,重启又变回去”或者“配置文件写对了,就是不生效”的窘境,这背后通常有三个隐藏的坑。
坑一:NetworkManager与systemd-networkd双轨制冲突
麒麟系统默认启用NetworkManager,但部分服务器版本同时保留了systemd-networkd的网络配置文件(位于/etc/systemd/network/),两个服务同时运行时,后启动的服务会覆盖先启动的IP配置,造成你看到的“配置丢失”假象。
解决方案是二选一,建议统一用NetworkManager管理物理网卡:
sudo systemctl disable systemd-networkd sudo systemctl stop systemd-networkd sudo systemctl restart NetworkManager
坑二:配置文件权限或格式不合法
手动编辑/etc/sysconfig/network-scripts/ifcfg-ens33时,最常见的问题是多打了空格或引号没成对。
BOOTPROTO=static IPADDR=192.168.1.100 NETMASK=255.255.255.0 GATEWAY=192.168.1.1 ONBOOT=yes
注意ONBOOT=yes是必须的,否则重启后网卡不会自动启用,这恰好解释了很多“重启后服务器IP消失”的求助帖。
坑三:忘了刷新系统hosts缓存
服务器内部自身的名称解析缓存(/etc/hosts)有时会指向旧IP,导致你在本机ping 主机名找不到服务器,用命令:
hostnamectl set-hostname 你的服务器名 echo "192.168.1.100 你的服务器名" | sudo tee -a /etc/hosts
让主机名和IP对得上,避免排查时被自己的缓存误导。
大规模IP自动发现:跨网段扫描与借道定位
如果麒麟服务器IP完全未知,且你不方便去机房接显示器,可以借助已有网络设备反查,具体场景:你在办公网(192.168.10.0/24),麒麟服务器接在业务网(192.168.20.0/24),中间有防火墙隔离,无法直接ping通。
此时可登录交换机或防火墙,查看ARP表:
display arp | include 20.0.
(不同厂商命令不同,华为/华三通用此格式)
找到麒麟服务器网卡对应的MAC地址(可以从机器背面标签或之前的资产记录中获得),从而锁定它实际获取的IP。
如果没有现成的网络设备权限,还有一招用arp-scan在本地广播域内扫网段:
sudo arp-scan --local
输出结果会列出所有活跃设备的IP和MAC,比对MAC地址厂商前缀(如Dell、H3C的服务器网卡前缀),基本能锁定目标IP。
麒麟系统排查IP异常的六个验证动作
完成配置修改后,按以下顺序执行验证,保证不是“假成功”:
- 重启网络服务:
systemctl restart NetworkManager,然后等5秒。 - 确认IP绑定:
ip -4 addr show,确认inet行存在且scope global。 - ping网关:
ping -c 3 网关IP,不通则检查物理接线和VLAN划分。 - ping外部DNS:
ping -c 3 223.5.5.5,不通则检查防火墙出方向策略。 - 检查监听端口:
ss -tunlp | grep 22,确认SSH服务在0.0.0.0上监听,否则远程工具必然提示“找不到服务器”。 - 查看系统日志:
journalctl -u NetworkManager -n 50,里面有网卡激活失败的详细原因。
经验之谈:服务器IP地址无故消失的常见环境因素
据行业数据,数据中心机房里,未配置持久化是IP丢失的头号原因,很多运维临时用ifconfig命令配置IP,以为能写入系统,实际重启即失效,这就是为什么强烈建议动态修改IP时必须用nmcli,而不是ifconfig。
如果麒麟服务器安装时用的是DHCP,后来网段划分调整,旧DHCP池被回收,重启后自然无法获取到期IP,这种情况下,给服务器绑定静态IP(按MAC地址预留)才是根治。
还有一个容易被忽视的细节:双网卡绑定(bond模式)配置错误时,会表现为两块网卡都显示UP,但IP始终无法ping通,查看/proc/net/bonding/bond0确认主备状态与链接速度。
q&a:麒麟系统IP排查补充问答
麒麟桌面版网络设置里的IP地址和命令行显示的IP不一致,以哪个为准?
以ip addr show命令行输出为准,图形化面板有时缓存了旧配置未刷新,实际生效的网络参数由内核网络栈决定,可通过nmcli connection show --active查看当前激活的连接的动态参数,判断配置文件与实际生效值的差异。
麒麟服务器设置了静态IP,但重启后又变成自动获取,如何彻底禁止DHCP?
编辑网卡配置文件/etc/sysconfig/network-scripts/ifcfg-,确保BOOTPROTO=static,同时删除DHCP_HOSTNAME相关选项,然后执行nmcli connection reload重载配置,再用nmcli connection up激活,如果系统启用了cloud-init,部分云场景下需要额外关闭network配置项避免开机覆盖。
两台麒麟服务器配同一网段IP,互相ping不通,但都能ping通网关,这是为什么?
这典型是ARP欺骗或MAC地址漂移导致,在交换机上检查两个端口是否配置了相同VLAN,并查看端口安全策略,更直接的方法是分别登录两台机器,确认网卡MTU值是否一致(默认1500),过大或过小会引发分片丢弃,不妨用ping -M do -s 1472测试大包情况,网关能通说明三层转发正常,二层通信异常则应重点检查交换机端口隔离配置。
首发原创文章,作者:王坚,如若转载,请注明出处:https://idctop.com/article/673068.html





