网通与电信双线服务器实施的配置

网通与电信双线服务器实施的配置

网通与电信双线服务器实施的配置

转载:http://rico.zhyh.org/read.php?41
双线服务器的配置
大 | 中 | 小
[ 2006/11/20 15:57 | by Rico ]
公司开发网站,为解决南北访问的问题,我把服务器托管到一个双线机房。经过反复调试,终于完成相应的配置。现将配置过程简明记录如下,供大家参考。

一、服务器状态
网通使用第一块网卡(eth0):
IP:218.57.200.242
掩码:255.255.255.0
网关:218.57.200.1
DNS1:202.102.152.3
DNS2:202.102.128.68

电信使用第二块网卡(eth1):
IP:222.173.254.21
掩码:255.255.255.240
网关:222.173.254.17
DNS1:219.146.0.130
DNS2:219.150.32.132

二、配置网卡:

# vi /etc/sysconfig/networking/profiles/default/ifcfg-eth0
DEVICE=eth0
ONBOOT=yes
BOOTPROTO=none
IPADDR=218.57.200.242
NETMASK=255.255.255.0
GATEWAY=218.57.200.1
TYPE=Ethernet
USERCTL=no
IPV6INIT=no
PEERDNS=yes

# vi /etc/sysconfig/networking/profiles/default/ifcfg-eth1
DEVICE=eth1
ONBOOT=yes
BOOTPROTO=none
IPADDR=222.173.254.21
NETMASK=255.255.255.240
GATEWAY=222.173.254.17
TYPE=Ethernet
USERCTL=no
IPV6INIT=no
PEERDNS=yes

# vi /etc/sysconfig/networking/profiles/default/route-eth1
GATEWAY0=218.57.200.1
NETMASK0=255.255.255.0
ADDRESS0=218.57.200.242

# vi /etc/sysconfig/networking/profiles/default/resolv.conf
nameserver 202.102.152.3
nameserver 202.102.128.68


三、配置路由表
# vi /etc/iproute2/rt_tables,增加网通和电信两个路由表
252     cnc
251     tel


设置网通的路由表
# ip route add 218.57.200.0/24 via 218.57.200.242 dev eth0 table cnc
# ip route add 127.0.0.0/8 dev lo table cnc
# ip route add default via 218.57.200.1 dev eth0 table cnc

设置电信的路由表
ip route add 222.173.254.0/24 via 222.173.254.21 dev eth1 table tel
ip route add 127.0.0.0/8 dev lo table tel
ip route add default via 222.173.254.17 dev eth1 table tel


制定策略,让222.173.254.21的回应数据包走电信的路由表路由,218.57.200.242的回应数据包走网通的路由表路由
ip rule add from 222.173.254.21 table tel
ip rule add from 218.57.200.242 table cnc


修改IP转发文件
# vi /etc/sysctl.conf
net.ipv4.ip_forward = 1
net.ipv4.conf.default.rp_filter = 1
kernel.sysrq = 0


设置静态路由表文件
# vi /etc/sysconfig/static-routes
eth0 net 218.57.200.242 netmask 255.255.255.0 gw 218.57.200.1
eth1 net 222.173.254.21 netmask 255.255.255.240 gw 222.173.254.17


将从两个WAN口出去的数据包进行IP伪装masquerade
# /sbin/modprobe ip_conntrack_ftp
# /sbin/modprobe ip_nat_ftp
# /sbin/iptables -t nat -A postrouting -o eth0 -j masquerade
# /sbin/iptables -t nat -A postrouting -o eth1 -j masquerade


设置默认网关为网通
# route add default gw 222.173.254.17


增加出口路由策略,客户端是网通的走网通线路,其余走电信线路。
ip rule add to 121.16.0.0/13 table cnc
ip rule add to 121.24.0.0/14 table cnc
ip rule add to 121.28.0.0/15 table cnc
ip rule add to 121.30.0.0/16 table cnc
ip rule add to 121.31.0.0/16 table cnc

其余省略...

刷新路由表
ip route flush cache


四、配置DNS
在服务器上配置自己的DNS解析,将域名服务器商处的域名解析指向服务器。
这样,来自网通的查询,将反馈网站网通的IP,其余反馈电信的IP。
配置named.conf
view "cnc" {
match-clients {121.16.0.0/13;121.24.0.0/14;121.28.0.0/15;121.30.0.0/16;121.31.0.0/16;121.47.0.0/16; 121.76.0.0/16;121.77.0.0/16;122.192.0.0/14;122.198.192.0/18;123.199.128.0/20; 124.108.40.0/21;124.128.0.0/13;124.160.0.0/16;124.161.0.0/16;124.162.0.0/16; 124.163.0.0/16;其余省略...;}
recursion yes;
zone "zhyh.org" {
   type master;
   file "/var/named/zhyh.org.cnc";
       };
};

view "other" {
match-clients { any; };
recursion no;
zone "zhyh.org" {
   type master;
   file "/var/named/zhyh.org";
};
};


配置zhyh.org.cnc,对应网通IP
$TTL   86400
@    IN    SOA   zhyh.org. root  (
                   2006111800 ; Serial
                   28800    ; Refresh
                   14400    ; Retry
                   3600000   ; Expire
                   86400 )   ; Minimum
    IN    NS    zhyh.org.
    IN    A    218.57.200.242
    IN    MX 10  mail
www   IN    A    218.57.200.242
ns1   IN    A    218.57.200.242
ns    IN    A    222.173.254.21
mail   IN    A    218.57.200.242
1    IN    PTR   localhost.

配置zhyh.org,对应电信IP
$TTL   86400
@    IN    SOA   zhyh.org. root  (
                   2006111800 ; Serial
                   28800    ; Refresh
                   14400    ; Retry
                   3600000   ; Expire
                   86400 )   ; Minimum
    IN    NS    zhyh.org.
    IN    A    222.173.254.21
    IN    MX 10  mail
www   IN    A    222.173.254.21
ns    IN    A    222.173.254.21
ns1   IN    A    218.57.200.242
mail   IN    A    222.173.254.21
1    IN    PTR   localhost.

配置222.173.254.zone、218.57.200.zone做反向解析;
$TTL 86400
@    IN    SOA   zhyh.org.   root.zhyh.org. (
    2006111813
    3600
    7200
    3600000
    86400 )
    IN    NS    localhost.
242   IN    PTR   www.zhyh.org.
242   IN    PTR   ns1.zhyh.org.
242   IN    PTR   mail.zhyh.org.


五、配置apache,做好虚拟主机设置
# vi /etc/httpd/conf/httpd.conf
NameVirtualHost 218.57.200.242:80
NameVirtualHost 222.173.254.21:80
<VirtualHost 222.173.254.21:80 218.57.200.242:80>
       ServerName zhyh.org
       DocumentRoot /var/www/html/
       ServerAdmin webmaster@zhyh.org
       ErrorLog logs/zhyh.org-error_log
       CustomLog "|/usr/local/sbin/cronolog /var/log/httpd/zhyh.org-access_log.%Y%m%d" combined
       <IfModule mod_rewrite.c>
               RewriteEngine On
               RewriteRule ^(.*)/htm/(.*)$ $1.php?$2
       </IfModule>
</VirtualHost>
<VirtualHost 222.173.254.21:80 218.57.200.242:80>
       ServerName www.zhyh.org
       DocumentRoot /var/www/html/zhyh.org
       ServerAdmin webmaster@zhyh.org
       ErrorLog logs/zhyh.org-error_log
       CustomLog "|/usr/local/sbin/cronolog /var/log/httpd/zhyh.org-access_log.%Y%m%d" combined
</VirtualHost>
有点深奥,能不能多加注释!!!!!!!!!
这个能解决主路由?
俺懂了
我认为前面修改那些部分都是多余的,dns部分已经解决了电信网通访问问题了。
双线路的托管商应该有自己的DNS,根据来源IP范围来对同一域名进行解析,不过有些时候不一定有用.来源IP就是用户们使用的DNS服务地址,得维护一个比较大的VIEW,有些访问有问题的来源IP还得手工维护添加,这些交给服务商做对可以让自己轻松一点...支持楼主把经验和别人分享的精神.