添加第二个以太网端口


11

我想启动一个“防火墙”项目。这将要求在网络上截取数据并对其进行处理,然后再将其传递。

有没有人尝试过(或理论上)如何向Model B添加第二个以太网端口?

可能的解决方案

  • USB以太网适配器

Answers:


4

作为购买USB以太网适配器的替代方法,您可以在单个NIC上创建两个接口。一个将面对您的本地子网,另一个将从您的ISP接收其IP。一种称为“棍子上的路由器”或“单臂路由器”的概念。

但是为此,您将需要一个支持vlan的交换机,以将两个网络分隔开。大多数都不是。这一个

要在RPi NIC上创建第二个接口,可以使用如下ip link命令(来自iproute包):

    # vlan with mac tag
    ip link add link eth0 address <mac address> name mywan type macvlan

    # vlan with id tag (IEEE 802.1q)
    ip link add link eth0 name mywan type vlan id <xx>

    # set interface up
    ip link set up dev mywan

    # get an public ip from your ISP (assuming dhcp protocol is used)
    dhclient -v mywan

如果成功,我将做一些测试并更新这篇文章。

编辑:我确认上述设置工作正常。单个RPi nic和调制解调器应该是同一VLAN的成员。调制解调器应以“中继”或“访问”(未标记模式)连接。


1
我倾向于使用类似的设置,但不是使用macvlan模块,而是在每个端口上使用不同的VLAN ID。这样,来自的数据包port1将在vlan1接口上可见,而来自的数据包port2将在vlan2等上可见。顺便说一句,也应该可以不使用macvlanVLAN交换机而直接使用。
Krzysztof Adamski 2013年

正确,对您的评论+1。这是比使用mac标签更好的解决方案。并且也符合IEEE。我为此添加了ip命令命令。关于在macvlan非VLAN交换机上的使用,两个网络将不会被隔离,并且任何主机都可以绕过单臂路由器/防火墙直接访问调制解调器。
ripat

3

这是官方论坛上的类似讨论

我尝试了“ Wintech USB 2.0 LanCard型号:LAU-15(CK0049C)成功。他们正在使用mcs7830驱动程序。

我不知道(未修改的)RPi是否可以提供足够的功率。在我的RPi上,我缩短了两个USB熔断器,并使用未熔断的独立电源/输入(5V 1,5A)。

从第二个注释中,如果您的Pi未被修改,则可能需要使用有源集线器,但除此之外,应该没有问题。


您只是要将USB以太网适配器连接到有源集线器,然后将集线器连接到RPi吗?
User7391 2012年

0

您可以使用至少一个选项,该选项不需要向RaspberryPi添加额外的以太网端口-使用VLAN交换机。这可能会非常昂贵,因为我知道最便宜的VLAN交换机的成本约为35 $。但是它还有一些其他好处(甚至更多的以太网端口,更多的学习方法等)。您可以配置它们以使用不同的VLAN ID标记每个端口,然后在Pi上创建多个VLAN接口。每个被标记的数据包将在您Pi上正确标记的接口上可见,从而有效地提供了许多虚拟接口。

By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.