桥接到已使用的eth1卡,而不会通过该卡丢失连接

如何在远程机器上的真实eth卡之间设置接,而不会丢失与该机器的ssh连接。

我通过eth1接口ssh进入一台机器。 172.168.40.2 255.255.255.0。

我想将eth1jointun / tap设备'tun0'。 我怎样才能做到这一点,而不是closureseth1和丢失我的SSH连接。

tunctl -u root brctl addbr br0 brctl addif br0 tun1 brctl addif br0 eth1 

结果,连接将会丢失

  1. 通过不同的接口连接到机器。
  2. 在控制台连接到机器。
  3. 在系统启动脚本中设置网桥(您没有指定什么types的系统),然后重新启动。

这工作:

 tunctl -t tap0 ; brctl addbr br0 ; brctl addif br0 tap0 ; \ ip addr del 192.168.115.200/24 dev eth0 ; \ ip addr add 192.168.115.200/24 dev br0 ; \ brctl addif br0 eth0 ; ip link set dev br0 up 

这是执行得如此之快,连接没有中断(甚至没有LAN连接)。 更安全的是在屏幕内部做到这一点(我首先做了,但结果是没有必要)。 最安全的解决scheme将是(在屏幕内)在这些命令期间放下防火墙中的所有内容。 所以插入第一行之后(在ip addr del之前) iptables -I INPUT 1 -j DROP并在最后添加(ip链接后设置) iptables -D INPUT 1

我遇到了同样的问题,但首先运行ip link set dev br0 up命令足以保持连接。

如果你是远程的,并且不能使用与网桥不同的接口,可以使用net-filter(iptables)创buildNAT或端口​​转发,或者在这些networking之间安装代理。