我需要做什么才能将我的电脑设置为默认网关?

我们试图把一个带有双网卡的盒子(比如外部和内部)放在一起,其中内网卡应该作为它连接的networking上的默认网关。

这个盒子正在运行Ubuntu。 这个盒子的基本目的是把内部networking上产生的消息,做一些工作,并把它们从外部网卡转发到服务器。 内部networking完全隔离,只需要一个普通的交换机连接内部网卡和其他两个盒子。

这些其他的盒子或者丢弃多播消息(内部LAN卡正在监听),或者发送给不在这个内部networking上的服务器的单播消息。 因此,我们需要内网卡作为默认网关,然后发送这些单播消息,然后双网卡盒上的代码可以拦截并转发这些消息到服务器。

问题:1.如何将局域网卡设置为默认网关(是否需要在Ubuntu上进行一些configuration)? 2.一旦我们有了这个设置,听一下接口拦截传入消息是否简单?

任何帮助(指针在正确的方向)表示赞赏。

谢谢。

您不需要在网卡上进行任何特殊configuration即可将其设为默认网关。 您只需要configuration内部LAN中的计算机即可将此NIC IP用作其默认网关。

要在两个子网之间路由数据包,您需要使用以下命令启用IPv4转发:

# echo 1 > /proc/sys/net/ipv4/ip_forward (as root) 

要使其成为永久的,请编辑/etc/sysctl.conf并取消注释:

 net.ipv4.ip_forward=1 

对于数据包截取,你可以用C / C ++编写一个程序。 您可以使用libpcap获取到达内部NIC的stream量,并执行您需要执行的任何处理。 我不能提供更多的细节,因为我不知道你想要做的处理types。