怎样在oracle virtualbox里添加网卡

怎样在oracle virtualbox里添加网卡,第1张

关闭虚拟机,添加一块虚拟网卡

启动虚拟机后,此时还查看不到新加的网卡:

[root@slave2 ~]# ifconfig

[plain] view plain copy 在CODE上查看代码派生到我的代码片

eth0 Link encap:Ethernet HWaddr08:00:27:04:05:16

inet addr:10.192.200.202 Bcast:10.192.200.255 Mask:255.255.255.0

inet6 addr: fe80::a00:27ff:fe04:516/64 Scope:Link

UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1

RX packets:321 errors:0 dropped:0 overruns:0 frame:0

TX packets:44 errors:0 dropped:0 overruns:0 carrier:0

collisions:0 txqueuelen:1000

RX bytes:33576 (32.7 KiB) TXbytes:5508 (5.3 KiB)

lo Link encap:Local Loopback

inet addr:127.0.0.1 Mask:255.0.0.0

inet6 addr: ::1/128 Scope:Host

UP LOOPBACK RUNNING MTU:16436 Metric:1

RX packets:0 errors:0 dropped:0 overruns:0 frame:0

TX packets:0 errors:0 dropped:0 overruns:0 carrier:0

collisions:0 txqueuelen:0

RX bytes:0 (0.0 b) TX bytes:0(0.0 b)

[root@slave2 ~]#cd /etc/sysconfig/network-scripts/

[root@slave2 network-scripts]# cp ifcfg-eth0 ifcfg-eth1

[root@slave2 network-scripts]# cat /etc/udev/rules.d/70-persistent-net.rules

[plain] view plain copy 在CODE上查看代码片派生到我的代码片

# This file was automatically generated bythe /lib/udev/write_net_rules

# program, run by thepersistent-net-generator.rules rules file.

#

# You can modify it, as long as you keepeach rule on a single

# line, and change only the value of theNAME= key.

# PCI device 0x8086:0x100e (e1000)

SUBSYSTEM=="net",ACTION=="add", DRIVERS=="?*",ATTR{address}=="08:00:27:04:05:16", ATTR{type}=="1",KERNEL=="eth*", NAME="eth0"

# PCI device 0x8086:0x100e (e1000)

SUBSYSTEM=="net",ACTION=="add", DRIVERS=="?*",ATTR{address}=="08:00:27:3a:ec:3c", ATTR{type}=="1", KERNEL=="eth*",NAME="eth1"

[root@slave2 network-scripts]# vi ifcfg-eth1

改下DEVICE,HWADDR,IPADDR,删除GATEWAY

修改后:

[root@slave2 network-scripts]# cat ifcfg-eth1

[plain] view plain copy 在CODE上查看代码片派生到我的代码片

DEVICE=eth1

HWADDR=08:00:27:3a:ec:3c

TYPE=Ethernet

#UUID=a4610b15-fc38-4984-875d-208599054e37

ONBOOT=yes

NM_CONTROLLED=yes

BOOTPROTO=static

IPADDR=10.0.0.2

NETMASK=255.255.255.0

注意:用于内连的网卡不能设置网关,否则会连不上网。

注意:MAC地址HWADDR一定得和/etc/udev/rules.d/70-persistent-net.rules文件中的eth1保持一致,否则servicenetwork restart会报错:

Bringing up interface eth1: Device eth1 does not seem to be present,delaying initialization.

[FAILED]

[root@slave2network-scripts]# service network restart

Shutting down interface eth0: [ OK ]

Shutting down loopback interface: [ OK ]

Bringing up loopback interface:[ OK ]

Bringing up interface eth0: Determining if ip address 10.192.200.202 isalready in use for device eth0...

[ OK ]

Bringing up interface eth1: Determining if ip address 10.0.0.2 is alreadyin use for device eth1...

[ OK ]

[root@slave2 network-scripts]# ifconfig

[plain] view plain copy 在CODE上查看代码片派生到我的代码片

eth0 Link encap:Ethernet HWaddr 08:00:27:04:05:16

inet addr:10.192.200.202 Bcast:10.192.200.255 Mask:255.255.255.0

inet6 addr: fe80::a00:27ff:fe04:516/64 Scope:Link

UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1

RX packets:3303 errors:0 dropped:0 overruns:0 frame:0

TX packets:343 errors:0 dropped:0 overruns:0 carrier:0

collisions:0 txqueuelen:1000

RX bytes:339469 (331.5 KiB) TX bytes:49274 (48.1 KiB)

eth1 Link encap:Ethernet HWaddr 08:00:27:3A:EC:3C

inet addr:10.0.0.2 Bcast:10.0.0.255 Mask:255.255.255.0

inet6 addr: fe80::a00:27ff:fe3a:ec3c/64 Scope:Link

UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1

RX packets:0 errors:0 dropped:0 overruns:0 frame:0

TX packets:10 errors:0 dropped:0 overruns:0 carrier:0

collisions:0 txqueuelen:1000

RX bytes:0 (0.0 b) TX bytes:636 (636.0 b)

loLink encap:Local Loopback

inet addr:127.0.0.1 Mask:255.0.0.0

inet6 addr: ::1/128 Scope:Host

UP LOOPBACK RUNNING MTU:16436 Metric:1

RX packets:0 errors:0 dropped:0 overruns:0 frame:0

TX packets:0 errors:0 dropped:0 overruns:0 carrier:0

collisions:0 txqueuelen:0

RX bytes:0 (0.0 b) TX bytes:0 (0.0 b)

从 /lib/udev/rules.d 可提取出网卡名称相关的配置文件:

60-net.rules

使用 /lib/udev/rename_device 这个程序,去查询 /etc/sysconfig/network-scripts/ 下所有以ifcfg-开头的文件

如果在 ifcfg-xx 中匹配到 HWADDR=xx:xx:xx:xx:xx:xx 参数的网卡接口

则选取 DEVICE=yyyy 中设置的名字作为网卡名称。

71-biosdevname.rules

如果系统中安装了 biosdevname ,且内核参数未指定 biosdevname=0 ,且上一步没有重命名网卡,则按照 biosdevname 的命名规范,从BIOS中取相关信息来命名网卡。

主要是取 SMBIOS 中的 type 9 (System Slot) 和 type 41 (OnboardDevices Extended Information)

不过要求 SMBIOS 的版本要高于2.6,且系统中要安装 biosdevname 程序。

75-net-description.rules

udev 通过检查网卡信息,填写如下这些 udev 的属性值

ID_NET_NAME_ONBOARD

ID_NET_NAME_SLOT

ID_NET_NAME_PATH

ID_NET_NAME_MAC

80-net-name-slot.rules

如果在 60-net.rules , 71-biosdevname.rules 这两条规则中没有重命名网卡,且内核未指定 net.ifnames=0 参数

则 udev 依次尝试使用以下属性值来命名网卡,如果这些属性值都没有,则网卡不会被重命名。

ID_NET_NAME_ONBOARD

ID_NET_NAME_SLOT

ID_NET_NAME_PATH

硬件:戴尔服务器

系统: Centos 7

千兆网卡:1,(4个接口)

万兆网卡:1(2个接口)

网卡 1 mac:00:0c:29:6e:8e:40

1 .网卡重命名测试

测试用例 :修改网卡1 的配置文件,步骤为添加文件 /etc/sysconfig/network-scripts/ifcfg-eth0

在上面的条件下,分别使用不同只的 biosdevname 和 net.ifnames ,然后重启查看网卡名称

测试结果

2. 网卡乱序测试

测试用例

测试结果

结论

在不修改 udev 规则的条件下, /etc/sysconfig/network-scripts/ 的 ifcfg-* 文件的优先最高。在 ifcfg-* 文件中将 DEVICE 和 mac 绑定后重命名网卡名称和避免网卡乱序。


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/bake/11647620.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-05-17
下一篇 2023-05-17

发表评论

登录后才能评论

评论列表(0条)

保存