首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >将Linux转换为从eth0:0到eth0的路由器流量

问将Linux转换为从eth0:0到eth0的路由器流量
EN

Unix & Linux用户
提问于 2014-05-18 16:46:59
回答 4查看 3.7K关注 0票数 0

因此,我一直在尝试将运行Mint的linux盒转换为路由器。eth0有一个具有IP地址的71.xx.xx.xx的公共地址。我创建了eth0:0,并将其设置为IP地址10.0.0.100。我启动了一个位于eth0上的DHCP服务器(因为它不会使用eth0:0),它提供10.0.0.101到10.0.0.200之间的地址。我可以在同一台机器上在eth0和eth0:0之间切换。我有另一台通过交换机连接到linux的笔记本电脑,它能够通过DHCP服务器接收ip地址。问题是如何将流量从eth0路由到eth0:0,反之亦然,以便私有网络( 10.0.0.x )上的计算机可以通过eth0上的静态IP访问internet。

EN

回答 4

Unix & Linux用户

发布于 2014-05-18 17:08:21

您至少需要2个接口才能通过路由机制进行转发。这些接口应该是枯萎的物理接口(如eth0 eth1)、vlan (eth0.1 eth0.2)、vpn (tun)、桥接(br0)、连接。但不是化名。别名只是将更多的IP附加到同一个接口的一种方式。

但是,由于您有私有IP地址,您可以使用Netfilter (iptables)防火墙规则执行SNAT和DNAT转发IP通信。

票数 3
EN

Unix & Linux用户

发布于 2014-05-18 17:18:03

首先,启用转发:

代码语言:javascript
复制
   echo 1 > /proc/sys/net/ipv4/ip_forward

这应该是你所需要的,因为你的“网关”可以看到双方。如果不是的话,您可能需要研究一下not,因为使用iptables来允许转发的传统方法不会只适用于单个NIC。

票数 1
EN

Unix & Linux用户

发布于 2014-05-18 21:05:25

试着

代码语言:javascript
复制
# Ensure that ip forwarding is active
echo 1 > /proc/sys/net/ipv4/ip_forward
# Masquerade local net with public IP
iptables -I POSTROUTING -t nat -o eth0 -j SNAT --to-source 71.xx.xx.xx
票数 0
EN
页面原文内容由Unix & Linux提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://unix.stackexchange.com/questions/130873

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档