如何在Linux中进行路由

时间:2020-03-06 14:35:04  来源:igfitidea点击:

我的isp有20 ips。我将它们绑定到运行centos的路由器盒上。我应该设置什么命令,以什么顺序设置,以便局域网上的其他框(基于其mac地址或者192个ip)可以让它们路由到特定ip上的框。例如,我想让Mac addy用户xxx:xxx:xxx0400退出72.049.12.157和xxx:xxx:xxx:0500退出72.049.12.158

解决方案

路由器的硬件和软件版本是什么?

我们是否正在尝试使用linux机器来做到这一点?现在停止并获取路由器。它将为我们长期节省金钱。

使用iptables来设置NAT。

iptables -t nat -I POSTROUTING -s 192.168.0.0/24 -j SNAT --to-source 72.049.12.157
iptables -t nat -I POSTROUTING -s 192.168.1.0/24 -j SNAT --to-source 72.049.12.158

这将导致192.168.0.0子网上的所有ip的外部IP为72.049.12.157,而192.168.1.0子网上的所有ip的外部IP为72.049.12.158. 对于MAC地址匹配,请使用-m mac --mac-source MAC-ADDRESS来代替-s 192.168.0.0/24参数。

不要忘记激活IP转发:

cat /proc/sys/net/ipv4/ip_forward

如果上面的代码返回一个" 0",那么它将不起作用,我们必须启用它。不幸的是,这是特定于发行版的,我不知道CentOS。
要快速破解,请执行以下操作:

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

用我们提供的少量信息回答这个问题就等于在此处重写了路由方法。你可以

  • 阅读有关路由和IP的一般信息(例如《 Linux系统管理员指南》)或者
  • 向我们提供有关我们获得的确切IP地址的更多信息。

上面使用NAT的答案肯定不是我们拥有公用IP地址时打算使用的答案。该解决方案无法很好地扩展。