Mac OSX下使用VMware Fusion 配置静态IP 图文教程指南

一. 前言

Mac OSX 下使用VMware Fusion 创建的虚拟机,默认是通过DHCP动态分配的IP.

这样有一个缺点,每次虚拟机重新启动,IP都会变,对于我们搭建K8S集群或中间件来说是不友好的。

那么如何Mac OSX 下使用VMware Fusion 创建的虚拟机 使用静态IP呢?

网上文章很多很乱,或有的只写过程不写为什么这么做。

这篇文章我们就好好分享下Mac OSX下如何使用VMware Fusion 给虚拟机 配置静态IP.

二. Mac OSX下使用VMware Fusion 配置静态IP

2.1 了解静态IP如何划分基础知识

上过大学计算机专业课的同学应该知道, IP 地址一共分为三类:

  • A类保留地址:10.0.0.0 ~ 10.255.255.255
  • B类保留地址:172.16.0.0 ~ 172.31.255.255
  • C类保留地址: 192.168.0.0 ~192.168.255.255
  • 其中 A类和B类一般用于公网IP, C 类一般用于本地局域网。
  • 避免和公网IP冲突,影响访问一些服务,这里我们本地局域网内的虚拟机一般使用C类地址。

2.2 Centos7 安装操作系统时图形界面配置静态IP

第一种方式,可以在安装操作系统的时候就设置好静态分配IP
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
Method默认为Automactic(DHCP),意为DHCP 自动分配IP

这里我们需要修改下选项, Method: Manual, 意为手动配置的意思
在这里插入图片描述然后点击Add 添加一行配置,那么Address ,Netmask,Gateway,DNS servers 怎么填写呢?

换句话说,我怎么知道该填写什么内容呢?

VMware Fusion 的相关配置文件默认位于 /Library/Preferences/VMware Fusion/vmnet8 目录下。

打开 Mac OSX 的Shell 环境中 进入/Library/Preferences/VMware Fusion/vmnet8 目录下

cd '/Library/Preferences/VMware Fusion/vmnet8'

执行查看当前目录下文件列表

ls

执行成功我们可以看到如下几个文件:

dhcpd.conf      dhcpd.conf.bak  nat.conf        nat.conf.bak    nat.mac
  • nat.conf 配置了网关和子网掩码等信息
  • dhcpd.conf 配置了DHCP自动分配IP的范围等信息。

查看nat.conf 内容,可以得到Netmask,Gateway 的地址信息。

cat nat.conf

打开后可以看到nat.conf内容如下:

# VMware NAT configuration file
# Manual editing of this file is not recommended. Using UI is preferred.

[host]

# Use MacOS network virtualization API
useMacosVmnetVirtApi = 1

# NAT gateway address
ip = 192.168.159.2
netmask = 255.255.255.0

# VMnet device if not specified on command line
device = vmnet8

注意:

  • 这里没贴完整,我们只看这个文件中的关键信息即可,上图也是参考这个信息进行配置。
  • 只查看这个文件不要修改
  • NAT gateway address :192.168.159.2
  • Netmask: 255.255.255.0

然后查看 dhcpd.conf 内容

cat dhcpd.conf 

打开内容如下所示:

# Written at: 04/01/2022 13:10:40
allow unknown-clients;
default-lease-time 1800;                # default is 30 minutes
max-lease-time 7200;                    # default is 2 hours

subnet 192.168.159.0 netmask 255.255.255.0 {
        range 192.168.159.128 192.168.159.254;
        option broadcast-address 192.168.159.255;
        option domain-name-servers 192.168.159.2;
        option domain-name localdomain;
        default-lease-time 1800;                # default is 30 minutes
        max-lease-time 7200;                    # default is 2 hours
        option netbios-name-servers 192.168.159.2;
        option routers 192.168.159.2;
}
host vmnet8 {
        hardware ethernet 00:50:56:C0:00:08;
        fixed-address 192.168.159.1;
        option domain-name-servers 0.0.0.0;
        option domain-name "";
        option routers 0.0.0.0;
}
####### VMNET DHCP Configuration. End of "DO NOT MODIFY SECTION" #######

注意:

  • 这个文件只查看不要修改。
  • range就是可选的静态ip的范围,192.168.159.128192.168.159.254
  • option broadcast-address是广播地址:192.168.159.255
  • option domain-name-servers就是DNS地址 192.168.159.2
  • DNS server 就配置192.168.159.2 即可。
  • hardware ethernet 表示 Mac 地址,
  • fixed-address 表示 IP 地址

修改成功后如下所示:
在这里插入图片描述

2.3 Centos7安装操作系统后修改动态IP为静态IP

前面我们说到,可以通过图形用户界面配置静态IP。

但如果我已经安装完操作系统了, Centos7 服务器一般又没图形用户界面,那么如何修改这个配置呢?

  • 首选我们需要查看下当前系统Ip V4 IP 地址
ip addr

执行成功可以看到类似如下的内容:
在这里插入图片描述

  • 我们可以看到当前虚拟机用的是ens33 这个网络适配器
  • 当前机器动态分配的IP V4是192.168.159.202,每次重启虚拟机这个ip可能都会变化。
  • 除此之外,还有docker0 等其他网络适配器

如果现在我们将这个机器的ip 强行设置成静态IP 192.168.159.166 那么该怎么做呢?

首选,我们需要进入虚拟机网络配置脚本目录

cd /etc/sysconfig/network-scripts

然后查看下当前文件夹下都有什么文件夹或文件

ifcfg-ens33  ifdown-ippp  ifdown-routes    ifup          ifup-ipv6   ifup-ppp       ifup-tunnel
ifcfg-lo     ifdown-ipv6  ifdown-sit       ifup-aliases  ifup-isdn   ifup-routes    ifup-wireless
ifdown       ifdown-isdn  ifdown-Team      ifup-bnep     ifup-plip   ifup-sit       init.ipv6-global
ifdown-bnep  ifdown-post  ifdown-TeamPort  ifup-eth      ifup-plusb  ifup-Team      network-functions
ifdown-eth   ifdown-ppp   ifdown-tunnel    ifup-ippp     ifup-post   ifup-TeamPort  network-functions-ipv6
  • 我们可以看到有一个叫做ifcfg-ens33 的文件,这个文件就是网络适配器配置文件。

还记得刚才我们查看IP 看到的那个ens33网络适配器么?

我们现在查看下ifcfg-ens33 这个网络适配器配置文件的内容:

cat ifcfg-ens33

执行成功后会看到类似的配置:

TYPE="Ethernet"
PROXY_METHOD="none"
BROWSER_ONLY="no"
BOOTPROTO="dhcp"
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="3256e277-b5ed-4800-9550-92cf4805efd1"
DEVICE="ens33"
ONBOOT="yes"
  • 我们可以看到这里BOOTPROTO 属性配置的是dhcp类型,意思就是通过DHCP动态分配IP

那么应该如何修改配置为静态IP呢?

vi ifcfg-ens33

修改后配置内容如下:

TYPE="Ethernet"
PROXY_METHOD="none"
BROWSER_ONLY="no"
BOOTPROTO="none"
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="3256e277-b5ed-4800-9550-92cf4805efd1"
DEVICE="ens33"
ONBOOT="yes"

# 追加内容
IPADDR="192.168.159.166"
PREFIX="24"
GATEWAY="192.168.159.2"
DNS1="192.168.159.2"
IPV6_PRIVACY="no"
  • 首选需要修改BOOTPROTO 的属性"dhcp" 修改为"none"
  • 然后追加如下几行配置。

重启网络或重启系统都可以

systemctl restart network

三参考文献

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

极客星云

谢谢认可,希望对你的学习有帮助

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值