我已经桥接了eth0
和wlan0
,并为接口指定了一个静态 IP br0
。我想要一个vlan
接口。我做到了modprobe 8021q
,并且做了以下事情:
vconfig add br0 5
ifconfig br0.5 192.168.1.100 netmask 255.255.255.0 broadcast 192.168.1.255 up
然后我尝试从 br0.5 ping 到我的路由器,其 ip 为 192.168.1.1,可以通过 br0 访问。
ping -I br0.5 192.168.1.1
我得到的重播是Destination Host Unreachable
。
以下是输出cat /proc/net/vlan/br0.5
:
br0.5 VID: 5 REORDER_HDR: 1 dev->priv_flags: 1
total frames received 0
total bytes received 0
Broadcast/Multicast Rcvd 0
total frames transmitted 329
total bytes transmitted 20447
total headroom inc 0
total encap on xmit 329
Device: br0
INGRESS priority mappings: 0:0 1:0 2:0 3:0 4:0 5:0 6:0 7:0
EGRESS priority mappings:
但是可以从其他主机 ping 通 vlan 接口。我从网络上的一台主机 ping 了 br0.5 (192.168.1.100) 的 ip,并且它响应了 ping。那么为什么我不能使用 br0.5 访问网络上的其他主机呢?
编辑1:
输出iptables -vL
:
Chain INPUT (policy ACCEPT 823 packets, 215K bytes)
pkts bytes target prot opt in out source destination
Chain FORWARD (policy ACCEPT 5 packets, 671 bytes)
pkts bytes target prot opt in out source destination
Chain OUTPUT (policy ACCEPT 705 packets, 220K bytes)
pkts bytes target prot opt in out source destination
答案1
我执行了以下操作:
ifconfig br0.5 192.168.1.100 netmask 255.255.255.0...
然后我尝试从 br0.5 ping 到具有 ip 的路由器192.168.1.1
...
您需要为这两个网络使用单独的子网。因此,VLAN 1 当前为 192.168.1.0/24,您可能希望为 VLAN 5 使用 192.168.5.0/24。