1. 前提条件
- 需要将虚拟机的网络连接模式设置为 NAT 连接,原因如下:
- Mware 提供了三种网络连接模式:
- 桥接模式:
- 虚拟机直接连接外部物理网络的模式,主机起到了网桥的作用。这种模式下,虚拟机可以直接访问外部网络,并且对外部网络是可见的
- 优点:同一局域网中的所有主机都可以访问当前机器
- 缺点:占用ip地址,不安全
- NAT模式:
- 全称:Network Address Translation
- 虚拟机和主机构建一个专用网络,并通过虚拟网络地址转换(NAT)设备对 IP 进行转换。虚拟机通过共享主机IP可以访问外部网络,但外部网络无法访问虚拟主机
- 实质:就是相当于在虚拟机中和宿主机之间又构建了一个虚拟的子局域网(VMnet8)
- 缺点:同一局域网下的其他机器无法进行访问
- 仅主机模式:
- 虚拟机只与主机共享一个专用网络,与外部网络无法通信
- 实质:就是通过虚拟的交换机实现和宿主机之间的网络共享(VMnet1)
2. 固定ip地址
- 修改 /etc/sysconfig/network-scripts 下的 ifcfg-ens33 文件内容
TYPE=Ethernet
PROXY_METHOD=none
BROWSER_ONLY=no
BOOTPROTO=static
DEFROUTE=yes
IPV4_FAILURE_FATAL=no
IPV6INIT=yes
IPV6_AUTOCONF=yes
IPV6_DEFROUTE=yes
IPV6_FAILURE_FATAL=no
IPV6_ADDR_GEN_MODE=stable-privacy
NAME=ens33
UUID=73437aa8-31d6-496c-b4d2-c673d4579d5c
DEVICE=ens33
ONBOOT=yes
IPADDR=192.168.159.120
NETMASK=255.255.255.0
GATEWAY=192.168.159.2
- 将上述字段修改之后,重启网络服务
- systemctl restart network
3. 固定ip地址的脚本
#!/bin/bash
DIR_NAME=/etc/sysconfig/network-scripts/
FILE_NAME=ifcfg-ens33
cd ${DIR_NAME}
cp ${FILE_NAME} ${FILE_NAME}.bak
sed -i 's/^BOOTPROTO.*/BOOTPROTO=static/g' ${FILE_NAME}
sed -i 's/^ONBOOT.*/ONBOOT=yes/g' ${FILE_NAME}
read -t 30 -p "请输入需要固定的ip地址:" ip_addr
read -t 30 -p "请输入网络掩码:" net_mask
read -t 30 -p "请输入网关:" gate_way
echo "IPADDR=${ip_addr}" >> ${FILE_NAME}
echo "NETMASK=${net_mask}" >> ${FILE_NAME}
echo "GATEWAY=${gate_way}" >> ${FILE_NAME}
echo ""
echo "重启网络服务.."
systemctl restart network
echo "重启成功!"
echo ""
#!/bin/bash
DIR_NAME=/etc/sysconfig/network-scripts/
FILE_NAME=ifcfg-ens33
cd ${DIR_NAME}
cp ${FILE_NAME}.bak ${FILE_NAME}
echo ""
echo "重启网络服务.."
systemctl restart network
echo "重启成功!"
echo ""