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

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

如何在不丢失与远程机器的 ssh 连接的情况下在远程机器上的真实以太网卡之间设置桥接。

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

我想将 eth1 连接到 tun/tap 设备“tun0”。如何才能在不关闭 eth1 和丢失 ssh 连接的情况下完成此操作。

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

结果,连接将会丢失

答案1

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

答案2

这有效:

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 连接也没有中断)。更安全的做法是在屏幕内执行此操作(我首先这样做了,但结果发现没有必要)。最安全的解决方案是(当然是在屏幕内)在执行这些命令期间将所有内容放在防火墙中。因此,在第一行之后(ip addr del 之前)插入iptables -I INPUT 1 -j DROP并在末尾(ip link set 之后)添加iptables -D INPUT 1

答案3

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

答案4

如果您处于远程并且不能使用与桥接中涉及的接口不同的接口,则可以使用网络过滤器(iptables)创建 NAT 或端口转发,或者在这些网络之间安装代理。

相关内容