配置 Linux 路由器

配置 Linux 路由器

是否可以设置一个 Linux 盒子作为两个接口之间的集线器/交换机?我有一个 ubuntu 盒子通过 wlan0 无线连接。我想将另一台机器连接到 ubuntu 盒子的 eth0,并让另一台机器使用该连接并位于同一网络就像 ubuntu 盒子一样。这可能吗?

答案1

您好,“未知”的 Google 用户,

如果您想跨局域网和无线局域网跨越子网,您需要设置网桥而不是路由器。这将使您的两个网卡表现得像交换机一样。

在 Debian/Ubuntu 下安装该bridge-utils软件包。然后创建一个 Bridge 并向其添加 NIC:

brctl addbr br0
brctl addif br0 eth0 wlan0

高血压

答案2

是的,这是可能的。你描述的很简单:

echo 1 > /proc/sys/net/ipv4/ip_forward

请注意,当您重新启动“路由器”框时,此设置将消失。如果您希望它在重新启动后仍然存在,则需要编辑/etc/sysctl.conf并添加或编辑以下行,使其看起来像这样

net.ipv4.ip_forward = 1

编辑:像往常一样,安全问题稍后再谈。请注意,这样做,任何战争驾驶者将能够连接到您的本地网络,绕过所有防火墙。要将其连接到防火墙,还需要运行(以 root 身份)

iptables -t nat -A FORWARD -j CHAIN-OF-YOUR-CHOICE

CHAIN-OF-YOUR-CHOICE如果你设置了良好的链条,那么可能是 INPUT。我的做法是:

iptables -I INPUT -j USER_DEFINED_CHAIN
iptables -t nat -I FORWARD -j USER_DEFINED_CHAIN
iptables -I USER_DEFINED_CHAIN <rule definitions of choice>

答案3

正如问题所明确指出的那样,机器需要同一网络,那么 IP 转发或 NAT/PAT 将无济于事。

我认为你想要的是这两个接口。也许这个“以太网桥 + netfilter 操作指南“ 可以帮助。

IBM 也有不错的指南如何在 Linux 中构建无线接入点

相关内容