运行 Fedora 10 我有以下场景。
NIC A - 在 10.11.0.1 上运行。已分配 DHCP。 NIC B - 尚未指定 IP。
连接到 NIC B 的机器需要在 NIC B 和 NIC A 之间传输流量,即。查看 NIC A 可以查看的所有内容。流量可以在这些网络之间自由流动,因为在不同的机器上已经安装了防火墙。
我意识到这是一个路由问题,但不知道从哪里开始。
- 是否为 NIC B 分配静态 IP?
- 我是否使用 iptables 创建规则来执行此操作?
- 我是否创建静态路由以及如何创建?
我将如何正确设置它?
首先,您需要在 Fedora 框中启用 IP 转发,编辑 /etc/sysctl.conf:
接下来,您需要告诉连接到 NIC B 的机器,如果它们要连接到网络 10.11.0.x,它们需要通过您的服务器。这可以通过将您的服务器(来自 NIC B 的 IP)设置为其他机器的默认网关来实现。或者您可以在机器中添加静态路由:
其中 ABCD 是您的服务器 (NIC B) 的 IP 地址。我假设 255.255.255.0 是另一个网络的网络掩码。
您也可以进行桥接而不是路由。这将把你的电脑变成一个交换机,或多或少的智能。为此,您将需要该
bridge-utils
软件包并通过禁用 DHCP(并重新启动)或运行ip addr del 10.11.0.1 dev eth0
.要配置网桥,您需要执行以下操作:
你的桥现在已经启动并运行了。要过滤数据包,您可以使用 iptables 或ebtables。
LE:自从joe 提到了 IP 地址,我记得我忘记了一些东西。如果您希望服务器有一个 IP 地址,您可以将其分配给
br0
接口,服务器将像连接到 NIC A 或 B 的任何其他计算机一样工作。LE2:网桥配置可以保存在
/etc/sysconfig
. 看怎么读/usr/share/doc/initscripts-*/sysconfig.txt
。例如,我的配置文件如下所示:我只有一张网卡,我将网桥用于我的虚拟机。
网桥通常没有地址,但没有限制它们不能被寻址。如果桥接和寻址 NIC 有双重用途,桥接正常流量并允许远程客户端从任一 NIC 连接进行访问。(由于它们是桥接的,因此您只需要一个 NIC 就可以在需要时为双方提供连接到桥接服务器的地址。但这会增加内部流量。不推荐。)