快捷搜索:   nginx

LINUX下双网双线服务器的架设全过程(2)


存盘退出 存盘退出 重起即可生效 (根本不需要用户登陆执行!)
其他脚本也是一样道理 各位 所有基本的#作到此为止 我想如果你能看完,
那么你自己就完全能用LINUX 打造一个高级路由 不要犹豫 他的性能绝对敢和市面上价值几大千的路由器成品媲美~!!!
感谢网络上这方面的网站、论坛介绍的很多知识 使我能够独立实施整个方案并且详尽的写出来! 感谢LINUX 以及无数的开发人员 是他们给我们构造了一个强大 自由 的#作系统及软件!
接下来,我将对其他更细微的有关#作方法、心得写下来,希望对现在采用LINUX 类LINUX系统、软件做路由的朋友有所帮助,
如:断线救援,如何在一条线路断开以后立刻启用另一条线路负担整个网络任务,并且在线路连同以后,又重新自动启用,如何为此提供最详尽的,有效的,简易的方案一盘秀的技巧设置 如果面对一盘秀的诸多问题了?

让我们一起来 在一张小小的软盘上反转乾坤 高级路由策略,想某一个游戏 只走某一条线? 想限制某些人或者某些机器的上网需求,我们照样能办到,并且能做得更好!!!!!!!!!
动态路由,电信级路由 如何在一台投资根本不多的LINUX 类LINUX机器上实现更强大的功能,如 各种高级动态路由 并使其有更好的扩充性和灵活性!!!为我们在网络接入方面多一个选择!!!多一点放心!!!。。。。。。。。。。。。。。。。。
我将把这个方案中所用到的脚本 和补丁 打包放在网上, 敬请指正!!!
我于昨日晚,测试完所有的脚本, 包括在两种不同的双线路下测试, ?
我采用的机器的配置和前一次差不多 P2 433 CPU 128M SDRAM 3.1G 硬盘三张8139 10/100M 自适应网卡,上100 M FULL 其他外设,在配置的时候用,
采用RedHat 9.0 系统,最小化安装. 网络具体情况, A环境 100台机器, 一条3M ADSL 固定IP 一条 4M 光纤 线路等值使用将系统配置好,并让内网机器上网, 使用网络蚂蚁,
在机器1上下载天虎网下 载中心(down.tyfo.com)的2000 SP4补丁 5线程, 最高速度 450K/S 最低速度 350K/S 平均值 410K/S 在机器2上同时也开5线程下载 绵阳169 下载中心的 2000 SP4 最高速度为 310K/S 最低速度为280K/S 平均为302/S
由此,可以看出, 基本上完全使用了线路的带宽, 并且,是分到两条线路在进行数据交换, 而我在LINUX路由上,用tcpdump 查看当前系统网络情况, 可以看 出 每条线上都分发的有连接, 并且一个很有趣的现象出现了,
当我在内网机器上 打开网页的时候,他通过 线路1连接到DNS 解析了域名,而又将连接从 线路2发出! B 环境,40台机器两条等值的带宽相同的 但是不同ISP 的ADSL线路 均为2M 下行 640K 上行速度! 一为电信 一为网通, 而上次有位朋友提到,
当服务器 是电信的时候内网连接可能卡,慢的情况,, 我针对此做了个测试, 在路由中写入规则,当远程站点为电信IP段的时候,选择电信线路出口,当远程站点IP为网通IP段的时候,选择网通线路出口, 这样缓冲了交差连接导致网速慢的情况, 但是,另一 个现象发生了,电信线路上感觉比较拥挤 , 在内网同时进行任意游戏,上网,聊天, 下载文件的时候, ADSL线路的请求等待队列都已经比较长, 毕竟ADSL的上行只有 640K 因为机器不是很多 所以感觉不明显,
最后我做了个更详细的规则 1.只对北方的或者其他物理位置较远的电信IP 段进行必须通过电信线路这 个规则, 2. 对于任意位置的网通IP段必须通过网通线路连接, 过后测试,基本上两条线路的使用比较均衡, 相对来说,连接到在物理位置上很远的远程站点进行 下载和游戏的不是很多, 因为还有很大一个因素是,远程站点的服务器配置,以及经过的中间节点的数目及网络性能等,如果你对此还不满意你可以进行更加细微 的设置 断线救援方面, 很遗憾在这个环节上,因为ISP的限制,导致此功能在实施 过程中遇见了一点点问题, 因为 我们这里的ISP ,不允许用ICMP探测, 当然,可以探测到某一条线路的网关, 也就是说,比如一条光纤和一条ADSL 光纤为网关为 218.6.2.1 ADSL网关为61.139.54.1 那么同时ping 这两个IP地址来探测线路情 况,是可行的,, 但是当某一条线路被停用以后,, 就有可能不能在线路恢复的 时候重新启用因为,,ISP不运行从光纤线路上去pingADSL网关,当ADSL断掉的时候 ,系统将从路由中删除ADSL连路,只有光纤在使用, 这个时候,不管ADSL是否正常, 都没办法ping 通 ,返回的值永远是”0〃如果你的地方ISP没有这个限制的话, 就没有这个问题, 并且会执行得很好. 针对这个问题,我会考虑在短时间了去寻 找其他的方法!!! 而对于”网络游戏经常断”这个情况, 在线路及服务器正常的情况下是不可能 出现的, 就算有这种情况出现,问题都不在于内部网络的路由上! 如果你是以下情况那么 你可以采用我的文件,并简单修改,就能实现起强大 的功能, 有3张物理网卡(两条外线),, 或者2张网卡(一条外线)+一固定ADSL 好了,, 废话就到此为止吧! 每个目录下面都有相应的说明文件详细说明,该目录下面需要改的文件,不需要改的文件,所需修改的文件的具体位置 约定 : 任何设置文件里面的参数都有统一性, 请注意最好是保持变量名 的一致 便于项目的设置和问题的查找 如: OUTIF1 代表外网卡设备1 OUTIF2 代表外网卡设备2 GW1 代表外网线路1(OUTIF1)的网关 GW2 代表外网线路2(OUTIF2)的网关 IP1 代表外网网卡1的IP地址 IP2 代表外网网卡2的IP地址 5288 NETMASK1 代表外网网卡1的掩码 NETMASK2 代表外网网卡2的掩码 你仅仅需要修改引号 “” 里面的对应内容即可 注意 请保证文件的格式 可用 windows的记事本打开, 但是可能将文件 内容表示成连续的段 中间会用隔开,请不要删除这个空字符 所有文件更改成功以后, 在当前目录下 执行命令 sh go 等待一分钟左右 系统将重启,在重启后, 所有的设置将生效

现在用Linux做代理服务的是越来越多,本人是小菜一个对这方面是一点都不懂想找人学。可是,某此人以钱为主,本来出钱也无所谓了
只要能学到东西,本事能学到手也行。可有些人太黑,竟要我1000+RMB,我一小网管那来那么多钱,只能自己摸索了。在网上找了N多教
程,照着做都不成功,可以是小弟太笨不能理解大师门的话没做好,自己又在网找了些关于iptables 资料,终于被我经弄出来了。
现在我把我的做法写出来跟大家分享。呵呵!可能是最简单的方法,大家不要笑小弟哦。如那位高手看了,请多多指点。
费话少说,现在进入正题。

Linux做代理服务器 最简单的做法,用RedHat9.0为例

找一台能装上Linux的机器最少要有两块网卡

1.安装Linux,不管是在图形,还是文体下都可以,选择最小安装,在安装的时候可以先配置一下外网的IP和DNS(不设也行),其它全部默认
安装好后进入提示符

2.进入提示符以后,首先配置下网卡:
eth0 (外网网卡)配置文件路经为:/etc/sysconfig/network-scripts/ifcfg-eth0
用 vi /etc/sysconfig/network-scripts/ifcfg-eth0 修改 eth0的内容,如果安装得时候配好了就不用配了,检下看有错没就行了。
eth0的内容为:(注IP为假设IP, #为注释不用写)

DEVICE=eth0   #硬件设备名
BOOTPROTO=static #配置方式
BROADCAST=218.28.9.255 #广播地址
IPADDR=218.28.9.123 #是你的IP地址
NETMASK=255.255.255.0 #子网掩码
NETWORK=218.28.9.0 #整个网段的地址
ONBOOT=yes #是否启用网卡(一般默认是开启的)

eth1(内网网卡),配置文件路经为:/etc/sysconfig/network-scripts/ifcfg-eth1
用 vi /etc/sysconfig/network-scripts/ifcfg-eth1 修改 eth0的内容
eth1的内容为:

DEVICE=eth1          #硬件设备名
BOOTPROTO=static        #配置方式
BROADCAST=192.168.0.255    #广播地址
IPADDR=192.168.0.1       #是你的IP地址
NETMASK=255.255.255.0      #子网掩码
NETWORK=192.168.0.0       #整个网段的地址
ONBOOT=yes           #是否启用网卡(一般默认是开启的)

网卡配置完了 大家可以用ifconfig命检查下网卡有没配错
3. 现在来设置外网网关,和ISP提供的DNS
网关的配置文件路径是 /etc/sysconfig/network 用vi 编辑 如果在安装时已经设好这个不用改。
内容为:

NETWORKING=yes     #这个不知道是什么意思默认为yes 不用改 
HOSTNAME=rslinux     #你的主机名   不用改
GATEWAY=218.28.9.120   #你的外网网关

下来加上DNS 如果安装时设好就不用改了
DNS配置文件路径为: /etc/resolv.conf 用vi 编辑
语法是:
nameserver 20.2102.224.68 (可以加多条)
以上基本工作全部做完以后我可以用 route命令检查下路态如果读出来很顺利则说明没问题.
我的做完以后是这样的

192.168.0.0 * 255.255.255.0 U 0 0 0 eth1
218.28.9.0  * 255.255.255.0 U 0 0 0 eth0
169.254.0.0 * 255.255.255.0 U 0 0 0 eth1
127.0.0.0  * 255.255.255.0 U 0 0 0 lo
default  hn.pds.kd.adsl 255.255.255.0 U 0 0 0 eth0

3.用IPTABLES 实现双网卡NAT功能,从而实现代理服务器上网
上面的工作做完了之后我们修改sysctl.conf,也就是IP转发文件。在这里我们一定要起用IP转发才可以。
sysctl.conf 路径为 /etc/sysctl.conf

里面可以这样写:
net.ipv4.ip_forward=1
net.ipv4.conf.default.rp_filter=1
kernel.sysrq=0

4.最后编辑 rc.local文件

vi /etc/rc.d/rc.local #编辑起动批处理文件,在文件末尾添加如下几行
iptables -F #清除iptables表
iptables -F -t nat #清除iptables IP nat表
iptables -t nat -A POSTROUTING -o eth0 -s 192.168.0.0/24 -j MASQUERADE #把内网ip伪装为外网的以至接通internet

echo 1>/proc/sys/net/ipv4/ip_forward #启动ip中转功能.
到此,重启机器后代理服务器就能用了。
如果不想加载那么多服务可用 ntsysv 命令把服务去掉 只留下iptables服务和networks服务,其它服务的勾全部去掉.

注: 以上请大家注意大小写,写错了是不能用的

呵呵,到此结束,费话多了点请大不要介意,我只是好心想说的明白点。
顶(0)
踩(0)

您可能还会对下面的文章感兴趣:

最新评论