这是我的/etc/network/interfaces
文件
我正在尝试添加 2虚拟接口连接到 2 个不同 ISP 的 2 个不同路由器
auto lo
iface lo inet loopback
iface eth2 inet static
address 192.168.0.57
netmask 255.255.255.0
gateway 192.168.0.1
dns-nameservers 8.8.8.8 8.8.4.4
iface eth3 inet static
address 192.168.1.57
netmask 255.255.255.0
gateway 192.168.1.1
我尝试了所有这些命令,但都不起作用
sudo /etc/init.d/networking restart
sudo /etc/init.d/networking reload`
还有这些
sudo ifconfig eth2 down
sudo ifconfig eth2 up
我收到一个错误:
eth2:获取接口标志时出错:没有这样的设备
我尝试manged=false
插入/etc/NetworkManager/NetworkManager.conf
然后重新启动sudo service network-manger restart
当我输入ifconfig -a
我所得到的是
eth0 Link encap:Ethernet HWaddr fc:aa:14:4d:11:22
inet addr:192.168.1.90 Bcast:192.168.1.255 Mask:255.255.255.0
inet6 addr: fe80::feaa:14ff:fe4d:1122/64 Scope:Link
UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1
RX packets:8027656 errors:0 dropped:2 overruns:0 frame:0
TX packets:20898303 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:1000
RX bytes:553970620 (553.9 MB) TX bytes:1471000436 (1.4 GB)
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:65536 Metric:1
RX packets:1837917 errors:0 dropped:0 overruns:0 frame:0
TX packets:1837917 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:0
RX bytes:240925560 (240.9 MB) TX bytes:240925560 (240.9 MB)
我的问题是:如何添加接口eth2
?eth3
答案1
好的,如果你有一个网卡,你可以通过这种方式添加虚拟接口
auto eth0
iface eth0 inet static
address 192.168.1.57
netmask 255.255.255.0
gateway 192.168.1.1
up ip addr add 192.168.0.57/24 dev eth0 label eth0:1
down ip addr del 192.168.0.57/24 dev eth0 label eth0:1
up ip route add 192.168.0.0/24 via 192.168.0.1 dev eth0:1 metric 20
down ip route del 192.168.0.0/24 via 192.168.0.1 dev eth0:1 metric 20
您的问题eth0
是在网络范围内192.168.1.xxx
并且eth3
也在该范围内,也许一个网络范围内只有一个接口就足够了?
如果你需要更多虚拟接口,可以eth0:2
按照同样的方式添加eth0:1
但这仅在两种情况下有效。
您的 PC 连接到交换机,两个路由器也连接到同一交换机。这样,PC 就可以访问两个路由器
你的路由器接口上有主 IP 地址和辅助 IP 地址
编辑1
您必须编辑/etc/NetworkManager/NetworkManager.conf
sudo nano /etc/NetworkManager/NetworkManager.conf
这将在我们的文本编辑器中打开“NetworkManager.conf”文件。
现在改变:
managed=false
到
managed=true
更改后重新加载网络服务
sudo service networking restart
如果这不起作用,请尝试
sudo ifdown eth0 && sudo ifup eth0
答案2
使用eth2
将告诉系统使用另一个适配器,但您只有一个。定义您应该使用的虚拟适配器eth0:<number>
。
尝试一下这个:
auto lo
iface lo inet loopback
iface eth0:1 inet static
address 192.168.0.57
netmask 255.255.255.0
gateway 192.168.0.1
dns-nameservers 8.8.8.8 8.8.4.4
iface eth0:2 inet static
address 192.168.1.57
netmask 255.255.255.0
gateway 192.168.1.1
答案3
要添加虚拟接口,请在 Linux 终端命令中输入以下命令
:
ifconfig VIRTUAL_INTERFACE_DEVICE IP_ADDRESS netmask SUBNET_MASK up
例如,
ifconfig eth0:1 192.168.1.6 netmask 255.255.255.0 up
这将创建一个名为 eth0:1 的新虚拟接口并分配 IP 地址 192.168.1.6。
要使此虚拟接口永久存在,请创建一个/etc/sysconfig/network-scripts/ifcfg-eth0:1
包含以下内容的新文件
DEVICE=eth0:1
ONBOOT=是
BOOTPROTO=静态
IPADDR=192.168.1.99
NETMASK=255.255.255.0
编辑后输入service network-manager restart
以应用更改。
要启动和关闭虚拟接口,请使用以下命令
ifup eth0:1
和ifdown eth0:1