软件环境

虚拟机软件:VMware® Workstation 15 Pro

目前的双网卡配置为:
image.png

NAT模式的网关
image.png

名词解释

网络模式
NAT模式+仅主机模式
NAT模式:负责外网通信,配置:自动获取IP地址,开机自启动
仅主机模式:内网通信,固定IP地址,配置:静态IP,开机自启动

以上就是前置工作,双网卡的目的就是为了
1,能上网
2,静态ip方便内网管理

不难发现我们主要设置仅主机模式这个网段为静态ip即可。

开始设置

查看虚拟机ip地址

  1. ip addr

image.png

从IP网段不难看出 ens34 就是我们的仅主机模式的网卡。
主要修改他的配置就可以了

  1. cd /etc/sysconfig/network-scripts/

image.png

这个文件夹可以看到这两个网卡的配置文件

编辑 ifcfg-ens34 (有可能不是这个名称)

  1. vi ifcfg-ens34
  2. NM_CONTROLLED=no #表示该接口将通过该配置文件进行设置,而不是通过网络管理器进行管理
  3. ONBOOT=yes #开机启动
  4. BOOTPROTO=static #静态IP
  5. IPADDR=192.168.30.4 #本机地址
  6. NETMASK=255.255.255.0 #子网掩码
  7. GATEWAY=192.168.30.2 #默认网关

保存,重启网络

  1. service network restart

备份原文

  1. TYPE=Ethernet
  2. PROXY_METHOD=none
  3. BROWSER_ONLY=no
  4. BOOTPROTO=static
  5. DEFROUTE=yes
  6. IPV4_FAILURE_FATAL=no
  7. IPV6INIT=yes
  8. IPV6_AUTOCONF=yes
  9. IPV6_DEFROUTE=yes
  10. IPV6_FAILURE_FATAL=no
  11. IPV6_ADDR_GEN_MODE=stable-privacy
  12. NAME=ens34
  13. UUID=e9f1f4f5-9671-4963-ba03-f958d28883d7
  14. DEVICE=ens34
  15. ONBOOT=yes
  16. IPADDR=192.168.30.4
  17. NETMASK=255.255.255.0
  18. GATEWAY=192.168.30.2
  19. DNS1=192.168.30.2
  20. DNS2=8.8.8.8

修改主机名

Centos7以上使用的hostname的定义和修改与之前版本略有不同。可以使用下面的命令

  1. hostnamectl set-hostname baseos

当然,修改了hostname,也要修改对应的/etc/hosts文件,修改如下:

  1. #127.0.0.1 localhost localhost.localdomain localhost4 localhost4.localdomain4
  2. 127.0.0.1 baseos
  3. #::1 localhost localhost.localdomain localhost6 localhost6.localdomain6
  4. ::1 baseos

然后,重启系统就行了。

我也可以以此虚拟机为基础镜像,后续需要可以不断复制,我认为做方便的还是直接写个脚本一键修改ip,hostname.

一键设置IP脚本如下

  1. #!/bin/bash
  2. CONF=/etc/sysconfig/network-scripts/ifcfg-ens34
  3. set_key_value() {
  4. local key=${1}
  5. local value=${2}
  6. if [ -n $value ]; then
  7. #echo $value
  8. local current=$(sed -n -e "s/^\($key=\)\([^ ']*\)\(.*\)$/\2/p" $CONF) # value不带单引号
  9. if [ -n $current ];then
  10. echo "setting $CONF : $key=$value"
  11. value="$(echo "${value}" | sed 's|[&]|\\&|g')"
  12. sed -i "s|^[#]*[ ]*${key}\([ ]*\)=.*|${key}=${value}|" ${CONF}
  13. fi
  14. fi
  15. }
  16. # 中文会出现口口字符
  17. read -p "please input IP:" IP_ADDRS
  18. set_key_value "IPADDR" ${IP_ADDRS}
  19. echo "setting success,restart network service ........"
  20. service network restart

注意脚本是在已经事先设置过静态IP,后续复制虚拟机中使用的,并不能一开始就用,网卡文件替换成自己的。