在VM中配置Linux网络

配置VMware网络编辑器

当VM中安装了CentOS后,最重要的是配置网络适配器,我们不是马上就要配置VM中的网络适配器,而是要配置VMware的网络适配器。

由于Centos是架在VM中,那么CentOS使用的是VMware的虚拟网卡,为了让SSH工具能连接它,需要在VMware虚拟网卡中设置网络参数(参数包括使用哪个网段、主机可用的IP地址范围、勾选是否将主机可用IP地址通过本地DHCP服务分配给虚拟机、子网掩码等等)。

1.打开“虚拟网络编辑器”

打开“DHCP设置”:

由上述图可知:

192.168.10.0为Vmnet8网卡的网络地址。

192.168.10.1为Vmnet8网卡中的IP地址。

192.168.10.2为Vmnet8网卡中的网关。所有在此网络的主机都需要通过网关进行数据交换。

192.168.10.3 ~ 192.168.10.254为Vmnet8网卡DHCP为未来接入主机分配IP地址的范围。

192.168.10.255为Vmnet8网卡中的广播地址。

CentOS6.6配置网卡并进行SSH远程连接

配置VM网卡

让CentOS所在的虚拟机使用Vmnet8网卡

配置VM中的Linux网络接口

修改CentOS网卡信息,让网卡的IP地址处于虚拟网络编辑器中DHCP设置的IP范围内。

1
2
3
4
5
6
7
8
9
10
11
12
DEVICE="eth0"
BOOTPROTO="static"
HWADDR="00:0C:29:42:62:54"
IPV6INIT="no"
NM_CONTROLLED="yes"
ONBOOT="yes"
TYPE="Ethernet"
UUID="13ccfc64-c5cd-481d-9941-fe3cb0f35db9"
IPADDR=10.0.0.5
NETMASK=255.255.255.0
DNS1=223.5.5.5
GATEWAY=10.0.0.2

重启网卡

1
ifdown eth0 && ifup eth0

检查网络是否畅通

1
ping baidu.com

若能ping通,代表设置成功。

检查SSH服务

利用SSH工具远程连接虚拟机上的CentOS6.6

确保Linux系统上是否存在SSH应用程序(openssh和openssl),利用以下命令查询SSH安装情况:

1
rpm -qa openssh openssl

查看当前系统环境,是否存在指定的服务:

1
sudo service --status-all | grep ssh*

查看指定的服务是否已经运行:

1
sudo service ssh status

也可查看进程状态:

1
ps aux|grep ssh

建立XShell会话

1新建会话:

2保存主机密钥:

3输入用户名:

4输入密码并记住密码:

这样就成功了。

[Tip]XShell快捷键

快捷键 说明
ctrl+c 中断命令执行操作过程
ctrl+l 清屏操作
ctrl+d 注销功能
tab 补全快捷键 补全目录路径或文件名称信息/命令
方向键上下 调取之前输入过的历史命令
ctrl+a 快速将光标移动到行首 a b c d
ctrl+e 快速将光标移动到行尾
ctrl+左右方向键 按照一个英文单词进行移动光标
esc+. 将上一个命令最后一个信息进行粘贴
ctrl+u 将光标所在位置到行首内容进行删除(剪切)
ctrl+k 将光标所在位置到行尾内容进行删除(剪切)
ctrl+y 粘贴剪切的内容
ctrl+s xshell进入到了锁定状态 suo锁
ctrl+q 解除锁定状态 quit推出锁定状态
ctrl+r 快速搜索历史命令

[Tip]CentOS6.6常用的网络配置命令

常用的网络配置命令:

1
2
3
4
5
ifup 网卡名	# 启动网卡 - 比如: ifup eth0
ifdown 网卡名 # 关闭网卡 - 比如: ifdown eth0
ifconfig 网卡名 # 查询网卡信息 - 比如: ifconfig eth0
ifconfig # 查询所有网卡信息
vi /etc/sysconfig/network-scripts/ifcfg-网卡名 # 编辑网卡信息 - 比如: vi /etc/sysconfig/network-scripts/ifcfg-eth0

快速配置sysconfig/network-scripts/ifcfg-网卡名的方法:

输入

1
setup

出现如下内容(如图所示),选中"Network configuration",按下Enter

选中"Device configuration",按下Enter

选中下图的第一个,按下Enter

输入以下内容后,光标移动到"Ok":

10.0.0.7为用户指定的该Linux所在虚拟机的主机地址,该主机处于其宿主机(你的电脑)所在的局域网中。

按下Right移动到"Save",然后按下Enter

按下Right移动到"Save&Quit",然后按下Enter

退出:

配置网卡

CentOS7配置网卡并进行SSH远程连接

配置VM网卡

参考2.1 配置VM网卡

配置VM中的Linux网络接口

步骤参考:2.2 配置VM中的Linux网络接口。这里给出的是ifcfg-<网卡名>的配置信息。

首先用ifconfig查询网卡名

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
[root@localhost ~]# ifconfig
ens33: flags=4163<UP,BROADCAST,RUNNING,MULTICAST> mtu 1500
inet 192.168.10.4 netmask 255.255.255.0 broadcast 192.168.10.255
inet6 fe80::49f:e3c8:3439:abf6 prefixlen 64 scopeid 0x20<link>
ether 00:0c:29:26:0a:2d txqueuelen 1000 (Ethernet)
RX packets 190 bytes 16371 (15.9 KiB)
RX errors 0 dropped 0 overruns 0 frame 0
TX packets 176 bytes 17540 (17.1 KiB)
TX errors 0 dropped 0 overruns 0 carrier 0 collisions 0

lo: flags=73<UP,LOOPBACK,RUNNING> mtu 65536
inet 127.0.0.1 netmask 255.0.0.0
inet6 ::1 prefixlen 128 scopeid 0x10<host>
loop txqueuelen 1000 (Local Loopback)
RX packets 24 bytes 1960 (1.9 KiB)
RX errors 0 dropped 0 overruns 0 frame 0
TX packets 24 bytes 1960 (1.9 KiB)
TX errors 0 dropped 0 overruns 0 carrier 0 collisions 0

由于我的网卡是"ens33",所以我需要配置"ifcfg-ens33"

1
vi /etc/sysconfig/network-scripts/ifcfg-ens33

完整配置内容如下:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
TYPE=Ethernet
PROXY_METHOD=none
BROWSER_ONLY=no
BOOTPROTO=none
DEFROUTE=yes
PEERDNS=yes
PEERROUTES=yes
IPV4_FAILURE_FATAL=no
IPV6INIT=yes
IPV6_AUTOCONF=yes
IPV6_DEFROUTE=yes
IPV6_PEERDNS=yes
IPV6_PEERROUTES=yes
IPV6_FAILURE_FATAL=no
IPV6_ADDR_GEN_MODE=stable-privacy
NAME=ens33
UUID=54956909-9dc1-4b84-85da-b5bd1e7c7bdb
DEVICE=ens33
ONBOOT=yes
IPV6_PRIVACY=no
IPADDR0=192.168.10.4
PREFIXO0=255.255.255.0
GATEWAY0=192.168.10.2
DNS1=8.8.8.8
DNS2=8.8.4.4

对刚安装完Linux上说,以下参数一定要确保添加上:

1
2
3
4
5
6
7
8
ONBOOT=yes
BOOTPROTO=none
PEERDNS=yes
PEERROUTES=yes
IPADDR0=192.168.10.4
PREFIXO0=255.255.255.0
GATEWAY0=192.168.10.2
DNS1=8.8.8.8

然后重启网卡

1
service network restart

[Tip]CentOS7常用的网络配置命令

如果CentOS7是以"Mini"方式安装的,那么不存在ifconfig命名的,需要通过yum命令安装(前提联网)

1
yum -y install net-tools

常用网络命令有

1
2
3
ifconfig
vi /etc/sysconfig/network-scripts/ifcfg-网卡名
service network restart

Ubuntu配置网卡

Miscellaneous | 杂项

VM和VMware两个术语的区别:VM指的是虚拟机(Virtual Machine);VMware指的是VMware Workstation Pro这个软件。

VMware虚拟网络组件以及VM三种网络模式(“桥接”,“NAT”,“Host-only”)

了解虚拟网络组件,可以参考VM撰写的Understanding Virtual Networking Components

VMware的虚拟网络组件包括四种组件,即虚拟交换机(virtual switches), 虚拟网卡(virtual network adapters), the virtual DHCP server(虚拟DHCP服务器), 和NAT设备(NAT device)。

虚拟交换机

在默认情况下,虚拟交换机默认有三种VMnet0, VMnet1, VMnet8。其中VMnet1, VMnet8通过Win+R -> ncpa.cpl查看。在安装Windows电脑中的“网络连接”面板可以看到VMnet1, VMnet8被虚拟化成网卡了。

虚拟网卡

这里的“虚拟网卡”不是指Windows电脑中的“网络连接”面板看到的VMnet1, VMnet8这样的虚拟化网卡,而是指内置在每个虚拟机中的一个虚拟网卡,在虚拟机完整Linux/Windows等操作系统后,会在这些操作系统被识别,具体识别成何种实际物理网卡,其参考以下引文:

The virtual network adapter appears in the guest operating system as an AMD PCNET PCI adapter, Intel Pro/1000 MT Server Adapter, or Intel 82574L Gigabit Network Connection. In Windows Vista, Windows 7, and Windows 8 guest operating systems, the adapter is an Intel Pro/1000 MT Server Adapter. In Windows 8.1 and Windows10 guest operation systems, the adapter is an Intel 82574L Gigabit Network Connection.

虚拟DHCP服务器

可以为虚拟机分配私有(对外部网络不可见)的IP地址,这个IP是与主机共享的。比如,我的Linux虚拟机的IP地址为192.168.10.3,那么我在Windows电脑上,通过cmd ping 192.168.10.3是可以ping得通的。

NAT设备

VM网络配置为"NAT"模式时,虚拟机和外部网络之间的通信是通过一个中间设备进行的,这个设备就是NAT设备。接收数据后,NAT设备会把每个外来的数据包分发个指定的虚拟机,这样就可以完成虚拟机和外部网络的通信。

虚拟机三种网络模式

VM网络配置为“桥接”模式时,VM的IP地址与主机的IP地址一致,通过宿主机的网卡与外部网络进行通信。NAT设备不会为该网络模式下的VM服务。

VM网络配置为"NAT"模式时,VM的IP地址可以拥有自己的IP地址,通过VMware的“虚拟网络编辑器”确定IP地址(其IP地址和IP地址范围都由虚拟DHCP服务器指定)。

VM网络配置为"Host-only"模式时,VM只能和宿主机或其他VM建立通讯。

Understanding Common Networking Configurations

Bridged Networking

Bridged networking connects a virtual machine to a network by using the network adapter on the host system. If the host system is on a network, bridged networking is often the easiest way to give the virtual machine access to that network.

When you install Workstation Pro on a Windows or Linux host system, a bridged network (VMnet0) is set up for you. See Configuring Bridged Networking.

NAT Networking

With NAT, a virtual machine does not have its own IP address on the external network. Instead, a separate private network is set up on the host system. In the default configuration, a virtual machine gets an address on this private network from the virtual DHCP server. The virtual machine and the host system share a single network identity that is not visible on the external network.

When you install Workstation Pro on a Windows or Linux host system, a NAT network (VMnet8) is set up for you. When you use the New Virtual Machine wizard to create a new virtual machine and select the typical configuration type, the wizard configures the virtual machine to use the default NAT network.

You can have only one NAT network. See Configuring Network Address Translation.

Host-Only Networking

Host-only networking creates a network that is completely contained within the host computer. Host-only networking provides a network connection between the virtual machine and the host system by using a virtual network adapter that is visible on the host operating system.

When you install Workstation Pro on a Windows or Linux host system, a host-only network (VMnet1) is set up for you. See Configuring Host-Only Networking.

[Tip]如何查询网卡信息

这里我们查询当前主机使用的网络。

Win+R -> ncpa.cpl。(记忆方法:ncpa: Network Control Panel Applet; cpl: Control Panel)

如果你连接的“以太网”那么就查看该网卡的网络信息:

同理,如果你连接的“WLAN”那么就查看该网卡的网络信息。