在ubuntu 16.04 的vm中添加新网卡,同一网段不同ip
在ubuntu 16.04 的vm中添加新网卡,同一网段不同ip
来源 https://blog.51cto.com/744478/2083672
在ubuntu 16.04 的vm中新加了一块网卡,但是不显示,用ifcnfig -a 可以看到,
执行
$ifconfig ens38 up
显示错误
在网上查看可以重新安装vmtools来重新安装网卡驱动
1、加载光驱
$sudo mkdir /mnt/cdrom
$sudo mount /dev/cdrom /mnt/cdrom
2、转到临时目录,复制安装文件
$cd /tmp
$tar zxpf /mnt/cdrom/VMwareTools-x.x.x-yyyy.tar.gz
3、安装vmtools
$cd vmware-tools-distrib
$sudo ./vmware-install.pl
一路回车就可以了$sudo reboot
我这样操作后,执行 sudo ifconfig ens38 up ,可以正常看到新网卡了。但是重启后还是看不到网卡。
编辑/etc/network/interfaces,添加
auto ens33 #网卡一
iface ens33 inet static
address 192.168.1.30
netmask 255.255.255.0
gateway 192.168.1.1
auto ens38 #网卡二
iface ens38 inet static
address 192.168.1.31
netmask 255.255.255.0
配置路由解决多网卡,同一网段,不同ip同一MAC的问题,ping 不同的IP,但返回的mac地址是一样的,会导致断网。
$sudo su root
# echo "210 ens33table" >> /etc/iproute2/rt_tables #子路由表ens33table
# echo "220 ens38table" >> /etc/iproute2/rt_tables #子路由表ens38table
在/etc/rc.local 文件中在exit 0;前面添加如下内容
ip route add 192.168.1.0/24 dev ens33 src 192.168.1.30 table ens33table
ip route add 192.168.1.0/24 dev ens38 src 192.168.1.31 table ens38table
ip route add default dev ens33 via 10.110.6.1 table ens33table
ip route add default dev ens38 via 10.110.6.1 table ens38table
ip rule add from 192.168.1.30 table ens33table
ip rule add from 192.168.1.31 table ens38table
:wq
# reboot
或
#ip route flush cache
ping 192.168.1.30
ping 192.168.1.31
arp -a
192.168.1.30 00-0c-29-bf-e7-f9 动态
192.168.1.31 00-0c-29-bf-e7-03 动态
此时就可以看到mac地址不一样了
如果这个虚机被clone或复制到其它不地方,要正常工作应该做如下工作
1、修改/etc/network/interfaces中不网卡的名称和ip地址信息
2、修改/etc/iproute2/rt_tables中的信息,这一步也可以不修改,修改的目的主要是因为nes33table,nes38table中的nes33,nes38是这个虚机的网卡名称,修改也是为了和新的环境匹配。
3、修改/etc/rc.local。这个地方就修改ip地址,子路由表的名称,要和新的环境匹配。
============= End