mac上使用Vmware Fusion虛擬機配置Centos的靜態ip

一、背景

本文簡單記錄一下,在mac arm 架構下使用 Vmware Fusion虛擬機下Centos7下如何配置靜態ip地址。如果使用dhcp靜態ip地址的動態分配,那麼可能ip地址會發生變化,因此需要使用靜態ip地址。

二、實現功能

  1. 虛擬機內部使用靜態ip地址。
  2. 虛擬機可以訪問到外部網路。

三、實現步驟

1、設置虛擬機的網路為nat

image

2、修改虛擬機的網路適配器網路

image

3、配置靜態ip

配置靜態ip我們知道一般需要配置如下3個參數。
ip地址:IPADDR、子網掩碼:NETMASK和網關:GATEWAY

3.1 獲取子網掩碼

mac電腦上執行如下命令

➜  ~ cat /Library/Preferences/VMware\ Fusion/vmnet8/nat.conf | grep netmask
netmask = 255.255.255.0

可以看到獲取到的子網掩碼是255.255.255.0

3.2 獲取網關

mac電腦上執行如下命令

➜  ~ cat /Library/Preferences/VMware\ Fusion/vmnet8/nat.conf | grep "ip ="  -B 1
# NAT gateway address
ip = 192.168.121.2

可以看到獲取到的網關是192.168.121.2

3.3 配置Centos的靜態ip

虛擬機內執行如下命令

vim /etc/sysconfig/network-scripts/ifcfg-ens160

ifcfg-ens160這個值是如何來的?
可以在虛擬機內執行ip addr命令來獲取。

具體配置如下:

BOOTPROTO=static # 配置靜態ip
IPADDR=192.168.121.136 # 配置的ip地址
NETMASK=255.255.255.0 # 子網掩碼
GATEWAY=192.168.121.2 # 網關
DNS1=8.8.8.8 # 配置dns地址

3.4 重啟網路

systemctl restart network

3.5 查看ip是否生效

[root@appbasic ~]# ip addr
1: lo: <LOOPBACK,UP,LOWER_UP> mtu 65536 qdisc noqueue state UNKNOWN group default qlen 1000
    link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00
    inet 127.0.0.1/8 scope host lo
       valid_lft forever preferred_lft forever
    inet6 ::1/128 scope host
       valid_lft forever preferred_lft forever
2: ens160: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc fq_codel state UP group default qlen 1000
    link/ether ee:fc:d8:1c:7d:5d brd ff:ff:ff:ff:ff:ff
    inet 192.168.121.136/24 brd 192.168.121.255 scope global noprefixroute ens160
       valid_lft forever preferred_lft forever
    inet6 fe80::ecfc:d8ff:fe1c:7d5d/64 scope link noprefixroute
       valid_lft forever preferred_lft forever
[root@appbasic ~]#

inet 192.168.121.136/24 brd 192.168.121.255 scope global noprefixroute ens160可以看到我們的ip地址配置生效了。

3.6 判斷是否可以訪問外網

[root@appbasic ~]# ping www.baidu.com
PING www.a.shifen.com (14.215.177.38) 56(84) bytes of data.
64 bytes from 14.215.177.38 (14.215.177.38): icmp_seq=1 ttl=128 time=34.4 ms
64 bytes from 14.215.177.38 (14.215.177.38): icmp_seq=3 ttl=128 time=30.7 ms
64 bytes from 14.215.177.38 (14.215.177.38): icmp_seq=4 ttl=128 time=30.2 ms
64 bytes from 14.215.177.38 (14.215.177.38): icmp_seq=5 ttl=128 time=39.7 ms
64 bytes from 14.215.177.38 (14.215.177.38): icmp_seq=6 ttl=128 time=36.6 ms
^C
--- www.a.shifen.com ping statistics ---
6 packets transmitted, 5 received, 16% packet loss, time 5080ms
rtt min/avg/max/mdev = 30.244/34.363/39.793/3.600 ms
[root@appbasic ~]#

可以看到可以正常的訪問到外網。

4、訪問ssh慢

配置了靜態ip地址後,可能通過ssh連接到虛擬機比較慢,查閱資料發現可以通過如下方案解決。

虛擬機/etc/ssh/sshd_config中到UseDNS這個值修改成no就可以了。