- 论坛徽章:
- 0
|
看到很多兄弟在搞ADSL负载均衡,下面是今晚的安装日志。由于是第一次写安装日志,所以写作水平很差,加上时间又太晚了,难免有很多错误,需要的同志就
凑或着看吧。不正确的地方,或需要改进的地方,欢迎多提意见。EMAIL:ssffzz1@126.com 另外:我不知道在这里怎么修饰文字,因为我
认为需要注意的地方我都加粗了,需要的话我附带了PDF文件,也可以打印的,没有密码。
LINUX双线ADSL负载均衡
系统环境:
双线均衡服务器:赛扬1.7,128内存,30G内存。软件为FC6.
PPPOE服务器:P133,32内存128MCF卡。软件为ROUTEROS.
测试结构如下:
|------------------|
PC1-----均衡服务器 PPPOE服务器--------路由器-----INTERNET
|------------------|
IP地址分配如下:
PC1: 192.168.10.88 GW 192.168.10.1
PPP0: 10.0.1.4 GW 10.0.0.1
PPP1:10.0.1.5 GW 10.0.0.1
一、 安装均衡服务器软件:
1、
安装FC6,安装开发包,这样在编译IPID模块的时候很方便。为防止网卡号的混乱先安装一块网卡,装完后依次插入其余2块网卡,每插一块启动一次,完成
驱动的安装,如果出现网卡命名的错误,则修改/etc/modprobe.conf和/etc/sysconfig/hwconf文件,还有
/etc/network-script/if-ethx文件。
2、 禁用SELINUX:修改/etc/selinux/config:文件,SELINUX=disable
3、 去掉IPV6支持:
#/etc/sysconfig/network
NETWORKING=yes
NETWORKING_IPV6=no
HOSTNAME=gw.jl.com
4、 去掉不必要的服务:这个利用setup程序完成好了。
5、 加入一些IPTABLES的模块:修改/etc/sysconfig/iptables-config文件,在原来的模块配置条目(就一条)下面加入
IPTABLES_MODULES= “ip_conntrack_ftp”
IPTABLES_MODULES=”ip_nat_netbios_ns”
IPTABLES_MODULES=”ip_nat_ftp”
6、 配置网卡ETH0
#/etc/sysconfig/ifcfg-eth0
# VIA Technologies, Inc. VT6105 [Rhine-III]
DEVICE=eth0
BROADCAST=192.168.10.255
HWADDR=00:19:5B:34:58:CB
IPADDR=192.168.10.1
IPV6ADDR=
IPV6PREFIX=
NETMASK=255.255.255.0
NETWORK=192.168.10.0
ONBOOT=yes
7、 配置网卡ETH1 ETH2
#/etc/sysconfig/ifcfg-eth1
# VIA Technologies, Inc. VT6105 [Rhine-III]
DEVICE=eth1
ONBOOT=yes
BOOTPROTO=none
HWADDR=00:19:5b:34:58:ce
#/etc/sysconfig/ifcfg-eth2
# VIA Technologies, Inc. VT6105 [Rhine-III]
DEVICE=eth2
ONBOOT=yes
BOOTPROTO=none
HWADDR=00:19:5b:34:58:c8
8、 配置ADSL,这里不要配置添加缺省网关,同时要修改PID文件,要不两条PPP链路不能同时使用,文件如下:
#/etc/sysconfig/ifcfg-ppp0
USERCTL=yes
BOOTPROTO=dialup
NAME=DSLppp0
DEVICE=ppp0
TYPE=xDSL
ONBOOT=yes
PIDFILE=/var/run/pppoe-ppp0.pid
FIREWALL=NONE
PING=.
PPPOE_TIMEOUT=80
LCP_FAILURE=3
LCP_INTERVAL=20
CLAMPMSS=1412
CONNECT_POLL=6
CONNECT_TIMEOUT=60
DEFROUTE=no
SYNCHRONOUS=no
ETH=eth1
PROVIDER=DSLppp0
USER=ppp0
PEERDNS=no
DEMAND=no
#/etc/sysconfig/ifcfg-ppp1
USERCTL=yes
BOOTPROTO=dialup
NAME=DSLppp1
DEVICE=ppp1
TYPE=xDSL
ONBOOT=yes
PIDFILE=/var/run/pppoe-ppp1.pid
FIREWALL=NONE
PING=.
PPPOE_TIMEOUT=80
LCP_FAILURE=3
LCP_INTERVAL=20
CLAMPMSS=1412
CONNECT_POLL=6
CONNECT_TIMEOUT=60
DEFROUTE=no
SYNCHRONOUS=no
ETH=eth2
PROVIDER=DSLppp1
USER=ppp1
PEERDNS=no
DEMAND=no
9、 配置均衡网关,把它方到/etc/ppp/ip-up文件中去,这样一旦拨号成功,就添加均衡网关。同时修改TCP的超时值。
#!/bin/bash
# This file should not be modified -- make local changes to
# /etc/ppp/ip-up.local instead
PATH=/sbin:/usr/sbin:/bin:/usr/bin
export PATH
LOGDEVICE=$6
REALDEVICE=$1
[ -f /etc/sysconfig/network-scripts/ifcfg-${LOGDEVICE} ] &&
/etc/sysconfig/network-scripts/ifup-post --realdevice ${REALDEVICE}
ifcfg-${LOGDEVICE}
/etc/ppp/ip-up.ipv6to4 ${LOGDEVICE}
[ -x /etc/ppp/ip-up.local ] && /etc/ppp/ip-up.local "$@"
ip route add default scope global nexthop dev ppp0 weight 1 nexthop dev ppp1 weight 1
echo "86400" > /proc/sys/net/ipv4/netfilter/ip_conntrack_tcp_timeout_established
exit 0
10、 按照IPID模块的编译方法,编译IPID模块。
11、 配置防火墙及NAT
# Generated by iptables-save v1.3.5 on Wed Apr 18 00:10:26 2007
*mangle
![]()
REROUTING ACCEPT [0:0]
:INPUT ACCEPT [0:0]
:FORWARD ACCEPT [0:0]
:OUTPUT ACCEPT [0:0]
![]()
OSTROUTING ACCEPT [0:0]
-A POSTROUTING -o ppp0 -j TTL --ttl-set 128
-A POSTROUTING -o ppp0 -j IPID --ipid-inc 1
-A POSTROUTING -o ppp0 -p tcp -m tcp --tcp-flags SYN,RST SYN -j TCPMSS --set-mss 1440
-A POSTROUTING -o ppp1 -j TTL --ttl-set 128
-A POSTROUTING -o ppp1 -j IPID --ipid-inc 1
-A POSTROUTING -o ppp1 -p tcp -m tcp --tcp-flags SYN,RST SYN -j TCPMSS --set-mss 1440
COMMIT
# Completed on Wed Apr 18 00:10:26 2007
# Generated by iptables-save v1.3.5 on Wed Apr 18 00:10:26 2007
*filter
:INPUT DROP [0:0]
:FORWARD DROP [0:0]
:OUTPUT ACCEPT [0:0]
-A INPUT -s 192.168.10.0/255.255.255.0 -p icmp -j ACCEPT
-A INPUT -m state --state RELATED,ESTABLISHED -j ACCEPT
-A INPUT -s 127.0.0.1 -j ACCEPT
-A INPUT -d 127.0.0.1 -j ACCEPT
-A INPUT -i eth0 -p udp -m udp --dport 67 -j ACCEPT
-A INPUT -i eth0 -p tcp -m tcp --dport 22 -j ACCEPT
-A FORWARD -p gre -j DROP
-A FORWARD -s 192.168.10.0/255.255.255.0 -j ACCEPT
-A FORWARD -d 192.168.10.0/255.255.255.0 -j ACCEPT
COMMIT
# Completed on Wed Apr 18 00:10:26 2007
# Generated by iptables-save v1.3.5 on Wed Apr 18 00:10:26 2007
*nat
![]()
REROUTING ACCEPT [0:0]
![]()
OSTROUTING ACCEPT [0:0]
:OUTPUT ACCEPT [0:0]
-A POSTROUTING -o ppp0 -j MASQUERADE
-A POSTROUTING -o ppp1 -j MASQUERADE
COMMIT
# Completed on Wed Apr 18 00:10:26 2007
12、 开启转发,及IP动态地址
# Kernel sysctl configuration file for Red Hat Linux
#
# For binary values, 0 is disabled, 1 is enabled. See sysctl(
![]()
and
# sysctl.conf(5) for more details.
# Controls IP packet forwarding
net.ipv4.ip_forward = 1
# Controls source route verification
net.ipv4.conf.default.rp_filter = 1
# Do not accept source routing
net.ipv4.conf.default.accept_source_route = 0
# Controls the System Request debugging functionality of the kernel
kernel.sysrq = 0
# Controls whether core dumps will append the PID to the core filename.
# Useful for debugging multi-threaded applications.
kernel.core_uses_pid = 1
# Controls the use of TCP syncookies
net.ipv4.tcp_syncookies = 1
net.ipv4.ip_dynaddr = 1
13、配置好nameserver服务器,/etc/resolv.conf
nameserver 202.102.134.68
14、配置文件中改变的部分,和应该注意的部分,我都加了斜体并且加粗显示了,这是要注意的地方。
二、
最后就可以在PPPOE服务器上,或者在均衡网关上看到两条PPP链路的负载均衡了。时间有限,我就不抓图了。应该说这种均衡可能是根据目的地址的均衡,
因为我在PC1上开了N个迅雷任务。这样能看到均衡的结果。但如果不开任何任务只用PING程序,则基本看不到结果。
本文来自ChinaUnix博客,如果查看原文请点:http://blog.chinaunix.net/u/12564/showart_281147.html |
|