让linux运行在网关状态。

原文:http://bbs.seu.edu.cn/pc/pccon.php?id=884&nid=13176
================================
最适用场合
    本方法比较适合以下情况的使用者:
    环境: 多台电脑在一个局域网中(如实验室中),但是只有一个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上网,设置和原理都一样。

你可能感兴趣的:(linux,职场,休闲)