读书人

ubuntu上单网卡NAT

发布时间: 2014-04-19 17:00:46 作者: rapoo

ubuntu下单网卡NAT

最适用场合    本方法比较适合以下情况的使用者:    环境: 多台电脑在一个局域网中(如实验室中),但是只有一个BRAS号,所有电脑都想要上网。    要求: 你不想给N多软件设置代理:给FireFox设置代理,给QQ设置代理,                                    给Fetion设置代理,迅雷、Pidgin,等等(设置这多累死人)           因为有些软件没办法设置代理(无此功能),难道每台电脑必须直连Internet?    一个更具体的应用场景:    10.3.22.1   是你们实验室的网关,    10.3.22.117 是你们实验室的一台服务器,终年开着,Ubuntu系统,BRAS一直连着,愿意为别人共享BRAS连接    10.3.22.120 是你的电脑,你没有BRAS了,想上网,又不想给N多软件设置代理,有些软件还没办法设置代理,                你就想你的电脑可以上网,而且要就好像直连Internet一样。    你的要求可以过分了吗?可以满足吗?可以!!设置    ●.服务器上的配置    也就是10.3.22.117上的配置。    在/etc/network/interfaces 中添加    auto eth0    iface eth0 inet static               address 10.3.22.117               netmask 255.255.255.0               broadcast 10.3.22.255               network 10.3.22.0    将/etc/sysctl.conf 中    #net.ipv4.ip_forward=1    行,改成    net.ipv4.ip_forward=1    在/etc/rc.local 中添加    route add default gw 10.3.22.1    /sbin/iptables -P FORWARD ACCEPT    /sbin/iptables --table nat -A POSTROUTING -o ppp0 -j MASQUERADE    在/etc/resolv.conf 中添加(设202.119.24.18是DNS服务器):    nameserver 202.119.24.18    配置完毕,重启服务器,并拨BRAS。(配置中用到的IP请参看本文前面的场景假设)    如果你不想重启服务器也可以,或者如果重启之后有其他异常,请参看(需要BRAS的b)http://ubuntuforums.org/showthread.php?t=713874    ●.客户机上的配置    也就是10.3.22.120上的配置。    Ubunut下    在/etc/rc.local 中添加    GATEWAY=10.3.22.1    route add -net 10.0.0.0 netmask 255.0.0.0 gw $GATEWAY    route add -net 58.192.112.0 netmask 255.255.240.0 gw $GATEWAY    route add -net 202.119.144.0 netmask 255.255.240.0 gw $GATEWAY    route add -net 121.229.0.0 netmask 255.255.0.0 gw $GATEWAY    route add -net 172.16.0.0 netmask 255.240.0.0 gw $GATEWAY    route add -net 121.248.48.0 netmask 255.255.240.0 gw $GATEWAY    route add -net 121.248.0.0  netmask 255.255.224.0 gw $GATEWAY    route add -net 211.65.32.0 netmask 255.255.224.0 gw $GATEWAY    route add -net 211.65.232.0 netmask 255.255.252.0 gw $GATEWAY    route add -net 202.119.0.0 netmask 255.255.224.0 gw $GATEWAY    route add -net 202.119.24.55 netmask 255.255.255.255 gw $GATEWAY    route add default gw 10.3.22.117    在/etc/resolv.conf 中添加(设202.119.24.18是DNS服务器):    nameserver 202.119.24.18    在终端中:    sudo route add default gw 10.3.22.117    Windows下    双击“本地连接” -> 属性 -> Internet协议(TCP/IP) -> 默认网关改成 10.3.22.117    大功告成,现在测试下,不拨BRAS时    ping www.baidu.com    看看是否通的?    这时,你的电脑就好像直连Internet一样在共享10.3.22.117提供的互联网连接。    浏览器,QQ,飞信,迅雷,Pidgin都不需要设代理就直接可以用!    想上国外网?只要在浏览器里设下代理服务器就OK了!原理    我们这里用到了NAT(网络地址转换),10.3.22.*都可以通过10.3.22.117上网,10.3.22.117就是一台NAT网关。    10.3.22.120所有的数据包都发给了10.3.22.117,而10.3.22.117把这些IP数据包 转换地址之后发给互联网上的目的地址,    目的地址返回的数据包同样经过IP地址转换后回发给了10.3.22.120,    所以10.3.22.120感觉好像自己直连互联网一样。    10.3.22.*也可以通过10.3.22.117上网,设置和原理都一样。
Ubuntu局域网单网卡Nat共享上网1、设置好主机的上网,下面的例子供参考:代码:IP地址 192.168.1.250网关 192.168.1.1DNS 61.128.114.1662、进入终端,输入命令 sudo su 进入管理员模式;3、接着输入命令,开启路由功能:代码:echo "1">/proc/sys/net/ipv4/ip_forward4、接着依次输入下列命令:代码:sudo iptables -Fsudo iptables -P INPUT ACCEPTsudo iptables -P FORWARD ACCEPTsudo iptables -t nat -A POSTROUTING -o eth0 -j MASQUERADE这样主机就设好了,如果想自动运行,可以如下操作:1)在文件 /etc/sysctl.conf 最后加上一行 net.ipv4.ip_forward = 12)在文件 /etc/rc.local 里加入下面的几行(注意,加在 exit 0 的前面):代码:sudo iptables -Fsudo iptables -P INPUT ACCEPTsudo iptables -P FORWARD ACCEPTsudo iptables -t nat -A POSTROUTING -o eth0 -j MASQUERADE设好以后,重新启动一下计算机;5、客户机设置好DNS,网关为主机的IP地址,下面的例子供参考:代码:IP地址 192.168.1.78网关 192.168.1.250DNS 61.128.114.166重启后,客户机就可以直接上网、上QQ了;

读书人网 >操作系统

热点推荐