是否可以桥接别名接口?并独立使用其标准“父”接口并发挥全部功能?
场景如下:我有一个基于 Linux 的防火墙和路由器,带有两个接口(eth0
、eth1
)。我想仅使用这些接口桥接 IPv4 流量并路由 IPv6 流量。
是否可以设置eth0
和eth1
用于 IPv6 路由和转发,同时桥接eth0:1
和eth1:1
作为“直通”IPv4 桥接(所有 IPv4 路由都在此机器的另一侧完成),以便我可以在桥接器和标准eth0
、和eth1
接口上设置数据包过滤规则?
答案1
桥接是第 2 层的事情。接口上的别名用于分配多个 IP 地址:即第 3 层...
你需要的是路由器。参见http://ebtables.sourceforge.net/examples/basic.html#ex_brouter
答案2
别名已弃用,基本上毫无意义。它们仅用于支持使用同样早已弃用的 ifconfig 命令向单个接口添加多个 IP 地址。它们不是真正的接口。您可以使用“ip addr”命令向单个接口添加多个 IP 地址。
使用 ifconfig 确实是一个坏主意,因为它基本上使用了过时的内核接口,需要对一些稍微复杂的设置进行彻底的欺骗。这是不可避免的,因为在它们有限的灵活性内根本无法提供正确的答案。
这也意味着桥接别名毫无意义。别名实际上并不存在,它们只是底层接口上的一些(过时的)语法错误(用来欺骗 ifconfig),因此无法进行有意义的桥接(尽管底层接口可以)。