Linux虚拟机如何设置静态IP地址
导读:Linux虚拟机设置静态IP地址通用步骤(以CentOS/RHEL为例) 设置静态IP需确保IP唯一性、子网掩码/网关正确,并根据发行版调整配置文件路径。以下是详细操作流程: 1. 准备工作:确认网络接口名称 首先需明确虚拟机的网卡名称(如...
Linux虚拟机设置静态IP地址通用步骤(以CentOS/RHEL为例)
设置静态IP需确保IP唯一性、子网掩码/网关正确,并根据发行版调整配置文件路径。以下是详细操作流程:
1. 准备工作:确认网络接口名称
首先需明确虚拟机的网卡名称(如ens33、eth0),避免配置错误。
命令:
ip a # 或使用传统命令 ifconfig(需安装net-tools)
输出示例:
2: ens33: <
BROADCAST,MULTICAST,UP,LOWER_UP>
mtu 1500 qdisc fq_codel state UP group default qlen 1000
link/ether 00:0c:29:xx:xx:xx brd ff:ff:ff:ff:ff:ff
inet 192.168.1.100/24 brd 192.168.1.255 scope global dynamic ens33
valid_lft 1234sec preferred_lft 1234sec
关键信息:网卡名称为ens33(需替换为你自己的名称)。
2. 查看虚拟机网络模式与网关信息
静态IP需配合NAT模式(推荐,保护内网且易配置)或桥接模式(直接接入物理网络)使用。
- 确认虚拟机网络模式:打开VMware/VirtualBox的虚拟机设置→网络适配器,选择“NAT模式”。
- 获取网关地址:
- 方法1:通过虚拟网络编辑器查看(编辑→虚拟网络编辑器→选中VMnet8(NAT)→NAT设置),网关通常为
192.168.x.1(如192.168.1.2)。 - 方法2:通过
cat /etc/resolv.conf查看DNS配置中的网关(部分系统会自动填充)。
- 方法1:通过虚拟网络编辑器查看(编辑→虚拟网络编辑器→选中VMnet8(NAT)→NAT设置),网关通常为
3. 修改网卡配置文件
配置文件路径因发行版而异,CentOS/RHEL为/etc/sysconfig/network-scripts/ifcfg-<
网卡名>
,Ubuntu/Debian为/etc/netplan/*.yaml(或/etc/network/interfaces)。
CentOS/RHEL 7+(sysconfig格式)
命令:
sudo vim /etc/sysconfig/network-scripts/ifcfg-ens33
修改/添加内容(关键参数说明):
TYPE=Ethernet
BOOTPROTO=static # 改为static(禁用DHCP)
ONBOOT=yes # 开机自动启用网卡(原为no则需修改)
IPADDR=192.168.1.133 # 静态IP(前三段需与子网一致,如192.168.1.xxx)
NETMASK=255.255.255.0 # 子网掩码(NAT模式下通常为255.255.255.0)
GATEWAY=192.168.1.2 # 网关(与虚拟网络编辑器中的NAT网关一致)
DNS1=8.8.8.8 # DNS服务器(可选,建议添加公共DNS如8.8.8.8或114.114.114.114)
DNS2=8.8.4.4
注意:删除或注释DHCP相关行(如DHCP_HOSTNAME),避免冲突。
Ubuntu/Debian(netplan格式,适用于18.04+)
配置文件路径:/etc/netplan/01-netcfg.yaml(文件名可能不同,以实际为准)。
命令:
sudo vim /etc/netplan/01-netcfg.yaml
修改内容(YAML格式需严格缩进):
network:
version: 2
renderer: networkd # 或NetworkManager(根据系统选择)
ethernets:
ens33: # 网卡名称
dhcp4: no # 禁用DHCP
addresses: [192.168.1.133/24] # 静态IP+子网掩码(/24等同于255.255.255.0)
gateway4: 192.168.1.2 # 网关
nameservers:
addresses: [8.8.8.8, 8.8.4.4] # DNS服务器
注意:缩进必须用空格(不能用Tab),否则会导致配置错误。
4. 重启网络服务使配置生效
根据发行版选择对应命令:
- CentOS/RHEL 7+:
sudo systemctl restart network # 重启network服务 - Ubuntu/Debian(netplan):
sudo netplan apply # 应用netplan配置 - 旧版Ubuntu(使用ifup/down):
sudo ifdown ens33 & & sudo ifup ens33 # 关闭再开启网卡
提示:若重启服务时报错(如“NetworkManager冲突”),可停止NetworkManager服务:
sudo systemctl stop NetworkManager
sudo systemctl disable NetworkManager
5. 验证静态IP配置
通过以下命令确认IP是否生效:
- 查看IP地址:
输出应显示ip a | grep ens33 # 或 ifconfig ens33inet 192.168.1.133/24(与配置的静态IP一致)。 - 测试网络连通性:
若能收到回复,说明静态IP设置成功。ping 8.8.8.8 # 测试是否能访问外网 ping www.baidu.com # 测试域名解析(需DNS配置正确)
常见问题排查
- IP冲突:若无法联网,检查静态IP是否与局域网内其他设备重复,修改为未使用的IP。
- 网卡名称变化:克隆虚拟机后,网卡MAC地址会重置,导致配置失效。解决方法:删除
/etc/udev/rules.d/70-persistent-net.rules文件,重启系统(系统会自动生成新规则)。 - DNS无法解析:检查
/etc/resolv.conf文件是否存在,或手动添加DNS服务器(如nameserver 8.8.8.8)。
以上步骤覆盖了Linux虚拟机设置静态IP的核心流程,可根据实际发行版和网络环境调整参数。
声明:本文内容由网友自发贡献,本站不承担相应法律责任。对本内容有异议或投诉,请联系2913721942#qq.com核实处理,我们将尽快回复您,谢谢合作!
若转载请注明出处: Linux虚拟机如何设置静态IP地址
本文地址: https://pptw.com/jishu/737812.html
