一、背景

本文简单记录一下,在mac arm 架构下使用 Vmware Fusion虚拟机下Centos7下如何配置静态ip地址。如果使用dhcp静态ip地址的动态分配,那么可能ip地址会发生变化,因此需要使用静态ip地址。

二、实现功能

  1. 虚拟机内部使用静态ip地址。
  2. 虚拟机可以访问到外部网络。

三、实现步骤

1、设置虚拟机的网络为nat

2、修改虚拟机的网络适配器网络

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就可以了。

最新文章

  1. [占位-未完成]scikit-learn一般实例之十二:用于RBF核的显式特征映射逼近
  2. luajava学习一
  3. 优秀的JavaScript开发框架
  4. hash查找
  5. python __init__.py
  6. TV
  7. 如何判断Fragment是否对用户可见
  8. 在O(1) 时间删除链表节点
  9. MyBatis good
  10. js格式化时间为JSON格式 ajax提交 后台处理
  11. php 分页类(2)
  12. 1643: [Usaco2007 Oct]Bessie&#39;s Secret Pasture 贝茜的秘密草坪
  13. AngularJS路由跳转
  14. 一个gif远程crash你的微信!
  15. Bootstrap 4,“未捕获错误:Bootstrap工具提示需要Tether(http://github.hubspot.com/tether/)”
  16. ceph 常见问题百科全书---luminous安装部署篇
  17. 【安富莱】【RL-TCPnet网络教程】第11章 RL-TCPnet调试方法
  18. Java开发笔记(三十四)字符串的赋值及类型转换
  19. 我的第一个flink_java程序
  20. cython 成功创建import 模块

热门文章

  1. 【零碎小bug系列】安卓开发是遇到空指针异常java.lang.NullPointerException: Attempt to invoke...
  2. cannot find module providing package github.com/&#215; working directory is not part of a module
  3. Mybatis插入数据
  4. oracle三个重要参数文件:pfile和spfile和init.ora
  5. JAVA学习2——HelloWorld
  6. 2021.11.11 EXKMP
  7. 计算机系统6-&gt; 计组与体系结构3 | MIPS指令集(中)| MIPS汇编指令与机器表示
  8. Android C/C++层hook和java层hook原理以及比较
  9. *CTF babyarm内核题目分析
  10. python学习-Day30