我有一个物理接口 eth0,我想创建两个虚拟接口并将它们与 eth0 桥接。为此,我这样做:
#Create the virtual interfaces
tunctl -t tap0
tunctl -t tap1
ifconfig tap0 up
ifconfig tap1 up
#Create the bridge
brctl addbr br0
brctl stp br0 off
brctl addif br0 eth0
brctl addif br0 tap0
brctl addif br0 tap1
#Turning up the bridge
ifconfig br0 up
Run Code Online (Sandbox Code Playgroud)
然而,我的问题是,如果分接接口在网桥中始终显示为禁用,并且没有流量流向它们。
$brctl show br0
bridge name bridge id STP enabled interfaces
br0 8000.080027cabeba no eth2
tap0
tap1
$brctl showstp br0
br0
bridge id 8000.080027cabeba
designated root 8000.080027cabeba
root port 0 path …Run Code Online (Sandbox Code Playgroud) 我想在桥接模式下设置站点到站点 IPsec:也就是说,不需要修改每个站点中的主机即可使用 IPsec 网关,但 IPsec 网关充当伪线。
我的计划是:
此后,到达任何网关的 eth0 的任何第 2 层数据包都应自动通过隧道 (L2TP) 安全地 (IPsec) 到其他网关。
它是否正确?这是推荐的方法吗?
另外:如何为> 2 个网关执行此操作?每个网关是否都需要与其他网关建立 IPsec SA和L2TP 隧道?理想情况下,我想让 gw 不需要了解其他每个 gw 的明确知识,但我找不到可靠的甚至标准的方法来做到这一点。
re0)igb[0123])我正在尝试复制我的 OpenWRT 路由器,它被设置为一个简单的路由器 + VLAN 2 => 不同的隔离子网,用于我不信任的各种 WiFi 设备。我的 WiFi 网桥运行两个不同的 SSID,其中一个标记流量 VLAN 2。我成功添加igb[0123]为单独的接口并将它们组合到BRIDGE0. 我10.0.1.1为BRIDGE0接口分配了一个 IP,启用了 DHCP,并且可以成功地将我的盒子用作简单的路由器。
但是,当我将 VLAN 2 的四个新虚拟接口(带有父接口)合并igb[0123]为一个BRIDGE1(IP 10.0.2.1) 时,我的硬连线 MacOS X 盒子上的 VLAN 2 接口10.0.2.20通过 DHCP 获取 IP,但无法路由任何内容。换句话说,我无法跨 WAN 甚至 ping 10.0.2.1。我创建了一个新的防火墙规则BRIDGE1来传递所有 IPV4 流量。根据 pfSense 文档,我还设置了一些系统可调参数 …
我需要将一些虚拟机从 Virtualbox 测试系统移动到 KVM 生产主机。主机是完全相同的硬件和软件系统的两个副本(64 位 Ubuntu Server v16.04,重要的是)。
这一切都不太复杂,但网络部分。
对于 virtualbox 的 guest 虚拟机,我有一个 virtio 以太网适配器桥接到主机绑定设备之一。可以从主机所连接的网络和主机本身轻松访问来宾。这样,来宾就像“网络上的另一台服务器”。在操作过程中,除了 virbr0 桥之外,我看不到其他任何东西。
AFAIU,这个简单的设置无法在 KVM 下复制。如果我使用桥接,则无法从访客到主机进行通信。建议的解决方案是向来宾添加第二个接口以用于此类用途。
这是我唯一的选择吗?
然后,如果有任何技术细节,我想知道 Virtualbox 如何能做到 KVM 无法做到的事情。
我已经设置了一个网桥,并希望将穿过它的 HTTP/HTTPS 流量重定向到本地端口 (8080),以便我可以使用 mitmproxy 进一步处理它。
到目前为止,我使用的是 ebtables 和 iptables 规则的组合。不幸的是,我不得不知道 eatables 不再支持表 'brute',我应该使用nftables代替。
使用的软件:
我如何创建这座桥:
root@kali:~# ip link add name br0 type bridge
root@kali:~# ip link set dev br0 up
root@kali:~# ip link set dev eth0 master br0
root@kali:~# ip link set dev eth2 master br0
Run Code Online (Sandbox Code Playgroud)
我的界面:
root@kali:~# ifconfig eth0
eth0: flags=4163<UP,BROADCAST,RUNNING,MULTICAST> mtu 1500
inet 192.168.178.67 netmask 255.255.255.0 broadcast 192.168.178.255
ether 00:01:c0:1b:4b:31 txqueuelen 1000 (Ethernet)
root@kali:~# ifconfig eth2
eth2: flags=4163<UP,BROADCAST,RUNNING,MULTICAST> mtu …Run Code Online (Sandbox Code Playgroud) 我正在尝试使用 RRAS 启动并运行 Azure 站点到站点 VPN,但需要帮助配置我的路由器的 iptables,以便在不使用 NAT 的情况下将 VPN 端口和协议桥接到 RRAS 服务器,同时仍允许 NAT 用于所有其他流量.
我已经能够正确配置 Azure 和 VM,并且我可以通过链接上的数据建立并运行连接(并且在 Azure 门户中显示为与双向数据连接)。但是,设置的连接不可用,我无法 ping 或似乎在 Azure VM 和我的本地计算机之间建立任何形式的连接。
我相信这是由于 Azure 的 Site-to-Site VPN 要求本地 VPN 网关直接连接到 Internet 而无需通过 NAT 防火墙(我必须使用它,因为它是我的家庭宽带,因此只有一个 IP)所以同时可以建立连接 我的路由器上的 NAT 以某种方式更改数据包,这意味着它们一旦到达 RRAS 服务器就无法正确路由。
我已经尝试了替代的站点到站点 VPN 解决方案(OpenVPN、SoftEther、RRAS 本身),但没有一个能正常工作,都表现出相同的问题,即两个 VM 的托管 VPN 连接能够连接到所有内容,并且我的家庭网络服务器可以正确路由以连接到 Azure 端,但我相信要么是由于 Azure VM 的限制(只有一个网络适配器并且无法启用混杂模式)或 Azure 虚拟网络本身,这意味着没有其他 Azure VM 能够连接到我的家尽管添加了静态路由以通过 VPN 服务器或将其添加为附加网关。
我正在使用运行最新 Merlin 版本的 Asus RT-AC68U 路由器,所以我希望我可以通过以下方式更改它的 iptables 规则和网络配置来使用 Azure Site-to-Site VPN:
我有一台 PC(运行 Fedora 20),它被用作“软件交换机”来控制某些外部设备的网络连接。有八个这样的设备;除了自身与外界的以太网连接外,PC 还具有两个 4 端口以太网卡。缺省情况下,8 个设备接口不经过滤转发到外部接口。
所需的功能是能够阻止进出给定设备的所有流量。目前,我们正在使用bridge link set dev <device> state 0,它将设备的桥状态设置为“禁用”。但是,这似乎也会阻止来自设备的 DHCP 流量。网络的 DHCP 服务器可通过外部接口访问,因此网桥似乎阻止了此流量,这意味着如果设备尝试更新其 IP,则会失败;就我试图在设备上执行的测试而言,这是有问题的。
对于给定的设备,我想要做的是阻止除 DHCP 之外的所有流量通过桥接器。该bridge命令似乎无法执行此操作,因此我可能希望将桥接状态永久保留为“转发”。做了一些研究,这似乎ebtables是我需要的工具,但配置它似乎需要比我更多的 DHCP 和网络知识!通过阅读一些ebtables教程,我认为我需要允许端口 67 和 68 上的流量(我相信这些是唯一用于 DHCP 的端口?)并阻止所有其他流量。
所以我的问题是:
ebtables以执行我想要的操作?ebtables该工作的最佳工具和/或是否有任何抽象层使其更易于配置?(我在想ferm的iptables。)ebtables以阻止所有流量栏 DHCP?我在 Amazon EC2 VPC 的 Linux 服务器上设置了桥接 OpenVPN。(在文档上花了几个小时,阅读类似的问题,在这里,openVPN 论坛,还没有运气。)
桥接接口已启动并包含两个子接口:
# brctl show
bridge name bridge id STP enabled interfaces
br0 8000.0e7c15e787b0 no eth0
tap0
Run Code Online (Sandbox Code Playgroud)
VPN服务器上的路由显然是可以的;我可以通过 SSH 连接、ping 通、响应来自客户端的 VPN 请求:
# netstat -rn
Kernel IP routing table
Destination Gateway Genmask Flags MSS Window irtt Iface
0.0.0.0 10.0.0.1 0.0.0.0 UG 0 0 0 br0
10.0.0.0 0.0.0.0 255.255.0.0 U 0 0 0 br0
Run Code Online (Sandbox Code Playgroud)
我可以从 Windows 和 Mac 客户端 ping 到 VPN 服务器的 IP,但不能 ping 到 VPC 子网上的任何其他 IP。(那些其他 IP …
我昨天买了一个 proxmox 许可证。一切正常,只是网络配置非常复杂。我的网络配置:
84.200.50.186 -> hostsystem ip
84.200.50.186 -> VM ip
255.255.255.248 -> netmask
84.200.50.185 -> gateway
auto eth0
iface eth0 inet static
address 84.200.50.186
netmask 255.255.255.248
gateway 84.200.50.185
auto vmbr0
iface vmbr0 inet static
address 84.200.50.187
netmask 255.255.255.248
gateway 84.200.50.185
bridge_ports eth0
bridge_stp off
bridge_fd 0
Run Code Online (Sandbox Code Playgroud)
ip 可以 ping 但虚拟机没有连接到互联网。
有任何想法吗?:-(
在这里,我有一些(可能略有不同)的问题,但彼此相关,因此我更愿意在一个问题中提出问题。
我一直在尝试允许我的 OpenVPN 客户端(OpenVPN 设置为桥接模式)连接到 Docker 容器。
众所周知,Docker 容器都通过桥(docker0桥或其他任何东西)相互连接。
我总是br0在我的家庭服务器上使用我自己的网桥 ( ),在那里我设置 Docker 以使用该网桥 ( br0),并tap0在该网桥上桥接 OpenVPN 接口 ( ) 和我的物理接口 ( eth0),它通过 LAN 连接到我的家用路由器。这总是对我有用,所有 OpenVPN 客户端总是能够访问桥接的每个 Docker 容器br0(OpenVPN 客户端和 Docker 容器在我的 LAN 范围内都有 IP)。
几天前我租了一个 VPS,我的物理接口直接连接到互联网(它有唯一的公共 IP)。
我和以前一样(将 Docker 设置br0为对所有容器使用我的),并tap0在br0.
我面临的问题是,我的 OpenVPN 客户端无法 ping 或访问任何 Docker 的容器(容器能够 ping 并访问其他 Docker 的容器,但不能访问 OpenVPN 客户端),并且客户端无法 ping 每个其他也一样。
这与我没有桥接物理接口有什么关系吗?如果是的话,我想知道为什么除了 OpenVPN TAP 接口之外,我还应该桥接服务器的接口(可能通过 LAN 连接到任何路由器)以获得桥接模式下的功能性 OpenVPN?
这个问题在我脑海中引发了另一个相关问题: …