如何在远程机器上的真实 eth 卡之间设置桥接,而不会丢失与该机器的 ssh 连接。
我通过 eth1 i 接口 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
结果,连接将丢失
这有效:
这执行得如此之快以至于连接没有中断(甚至连 LAN 连接也没有)。更安全的方法是在屏幕内执行此操作(这是我首先执行的,但结果证明没有必要)。最安全的解决方案是(当然是在屏幕内)在执行这些命令期间将防火墙中的所有内容删除。所以在第一行之后插入(在 ip addr del 之前)
iptables -I INPUT 1 -j DROP
并在末尾添加(在 ip link set 之后)iptables -D INPUT 1
我遇到了同样的问题,但首先运行该
ip link set dev br0 up
命令足以保持连接。如果您在远程并且不能使用与网桥中涉及的接口不同的接口,则可以使用 net-filter (iptables) 创建 NAT 或端口转发,或者在这些网络之间安装代理。