日期:2014-05-16  浏览次数:20618 次

Linux下如何实现“Windows的共享网卡”的功能?
电脑有两张网卡,一张通过DHCP获取外网IP,一张自己设定内网IP。
在Windows下,可以让外网为内网共享,这样内网其它机器也可以连接到外网。
如果用Linux的话,如何实现共享网卡功能?

------解决方案--------------------
设置内核参数ip_forward=1开启ip路由功能:
sysctl -w net.ipv4.ip_forward=1

启动iptables服务,设置MASQUERADE类型的snat
service iptables start
chkconfig iptables on
这里的eth1根据实际情况选择
iptables -t nat -I POSTROUTING -o eth1 -j MASQUERADE

保存防火墙设置规则:
service iptables save

客户端设置网关为该主机ip

大概步骤好像是这样,网上有很多文章介绍这个的



------解决方案--------------------
配置一条默认路由就可以了,网上文章很多~
------解决方案--------------------
2楼和3楼说的貌似都可以实现。Google一下有不少相关方法。
我这里提供一个我认为可行的方法:
将内网网卡要访问的内网路由指定为内网的网关,外网请求指定到DHCP的网关。貌似是这样,当然,还得做一个回路的路由。

------解决方案--------------------
通过iptables的snat功能可以做一个透明的代理路由。
------解决方案--------------------
探讨
通过iptables的snat功能可以做一个透明的代理路由。

------解决方案--------------------
对的,使用iptables进行转发就可以了