LINUX服务器在双线机房实现方法

序言:

多线路接入技术就是在互联网数据中心(IDC)通过特殊的技术手段把不同的网络接入商(ISP)服务接入到一台服务器上或服务器集群,使服务器所提供的网络服务访问用户能尽可能以同一个ISP或互访速度较快的ISP连接来进行访问,从而解决或者减轻跨ISP用户访问网站的缓慢延迟(南北网络瓶颈)问题。

多线路接入是一个技术概念可以有多种具体实现方式,由于大多用户都是网通与电信,为了见简单起见,我们只讨论双线接入技术。目前国内的ISP提供商分别提出了“双IP双线路”、“单IP双线路”、“CDN多线路”和“BGP单IP双线路”等双线路实现方法。

1、单IP双线路

这种解决方案只能说是半双线的技术方案、是一种过渡形式的解决方案。此方案一般为单线ISP服务商往双线ISP服务商转型期所采用的折衷方案。一般的中、小网站可以采用该方案。

2、用BGP协议实现的单IP双线路

BGP(边界网关协议)协议主要用于互联网AS(自治系统)之间的互联,BGP的最主要功能在于控制路由的传播和选择最好的路由。中国网通与中国电信都具有AS号(自治系统号),全国各大网络运营商多数都是通过BGP协议与自身的AS号来互联的。使用此方案来实现双线路需要在CNNIC(中国互联网信息中心)申请IDC自己的IP地址段和AS号,然后通过BGP协议将此段IP地址广播到网通、电信等其它的网络运营商,使用BGP协议互联后网通与电信的所有骨干路由设备将会判断到IDC机房IP段的最佳路由,以保证网通、电信用户的高速访问。

3、双IP双线路实现方式

是指在一台服务器上安装两块网卡,分别接入电信网线与网通网线并设置一个网通IP与一个电信IP,这样一台服务器上就有了两个IP地址,需要在服务器上添加网通或电信的路由表来实现网通用户与电信用户分别从不同的线路访问。双IP双线路具有常用的两种使用方式:

ICP用户在网站设置两个IP地址不同的链接,网通用户点击网通IP访问服务器,电信用户点击电信IP访问;

使用BIND9(DNS服务器软件)对不同的IP地址请求返回不同的服务器IP的功能来实现网通用户请求域名时返回网通的IP,电信用户请求域名时返回电信的IP,这个方式就是一些IDC提出的智能DNS的方案。

双IP双线路在一定程度上提高了网通与电信用户访问网站的速度,但缺点是由于服务器接入的是双网卡必须在服务器上进行路由表设置,这给普通用户增加了维护难度,并且所有的数据包都需要在服务器上进行路由判断然后再发往不同的网卡,当访问量较大时服务器资源占用很大。此方案是最简单的双线解决方案,一般限于规模较小的IDC提供商使用。

4、CDN方式实现多线路

CDN(Content Delivery Network)互联网内容分发网络,就是多服务器分网托管加智能域名DNS,即服务器是CDN服务商提供,放在不同网络节点上,通过缓冲程序自动抓取用户源服务器的数据,然后缓存在不同网段节点的服务器上。再配合智能DNS服务器的分网解析功能,实现不同网络用户都能访问到离自己最近网段上的网站,从而避免因为网络问题而影响网站访问速度的目的。现绝大部份CDN技术在处理静态网站上比较成熟,但对交互性很强如全动态页面的网站还不是很成熟,实施成本也比较高,维护工作量增加。一般大、中型门户网站都采用该方案,目前有一些

CDN的工作原理是多个服务器放在不同网络节点上,通过缓冲程序自动抓取用户源服务器的数据,然后缓存在不同网段节点的服务器上,在此基础上配合智能DNS服务器的分网解析功能,实现不同网络用户都能访问到离自己最近网段上的网站,从而避免因为网络问题而影响网站访问速度的目的。

下面来对以上提出的双线路接入实现方式进行具体说明:结构图如下所示

环境:

RedHat enterprise 5.3 服务器

方法:

对于双线双IP的服务器来说,要解决两个问题:

一、你的网站用户究竟走那个IP来访问你的服务器

也就是通常所说的DNS VIEW。自己如果有DNS服务器的,可以自己设置。也可以使用智能DNS解析来解决,即DNS服务器判断用户所在IP地址,如果用户是电信接入,就把服务器的电信IP解析给他;如果用户是网通接入,就把服务器的网通IP解析给他。智能DNS可以自己基于开源的DNS软件来定制,不过国内有一个很好的免费智能DNS服务器提供商:DNSPod,推荐使用DNSPod的服务。他就可以实现上述的智能DNS解析。我就是在用的DNSPod的智能DNS服务。

在DNSPod上,添加域名解析记录时,如下所示:

这样,针对不同线路来访问的用户,DNS就会解析出域名aaa.fklsw.cn不同的IP地址。电信、网通、教育网来的用户,解析的IP为以上所示,铁通、移动、有线通的用户获得的是默认项所示的IP。

二、你的网站内容究竟走那个IP返回给用户

需要在服务器上面配置路由规则,来决定究竟如何处理数据的返回路径问题。在处理这个问题上面,存在2种情况:⑴、双网卡双IP,⑵、单网卡双IP。这2种实现起来是差不多的,都会做讲解。确定路由,也有静态路由和动态路由2种方法:

1、填写静态路由表

因为服务器有两个IP,分别在不同的网段,你使用电信IP的网关做路由,那么网通的IP地址用户压根就访问不到,反之亦然。目前流行的解决办法,就是使用电信网关做默认的路由,然后自己手工填写所有网通IP地址段的路由规则。这种办法的缺点是添加规则太多太麻烦,而且难免挂一漏万,如果你漏了一些网段,那这些网段的用户就访问不了你的网站了。况且网段地址的分布总是在不断变化的,你还必须定期更新路由表。

实现:

以上面的图示为例进行配置:

⑴、配置IP:(注意:以电信线路网关做为默认路由)

网站主机

①、IP(电信):192.168.15.236

IP(网通):192.168.16.236

②、单网卡双IP

vi

/etc/sysconfig/network-scripts/ifcfg-eth0

GATEWAY=192.168.15.1

TYPE=Ethernet

DEVICE=eth0

HWADDR=00: 0c:29:57:c8:89

BOOTPROTO=none

NETMASK=255.255.255.0

IPADDR=192.168.15.236

BROADCAST=192.168.15.255

ONBOOT=yes

USERCTL=no

IPV6INIT=no

PEERDNS=yes

vi

/etc/sysconfig/network-scripts/ifcfg-eth0:0

TYPE=Ethernet

DEVICE=eth0:0

HWADDR=00:0c:29:57:c8:90

BOOTPROTO=none

NETMASK=255.255.255.0

IPADDR=192.168.16.236

BROADCAST=192.168.16.255

ONBOOT=yes

USERCTL=no

IPV6INIT=no

PEERDNS=yes

注意:在ifcfg-eth0:0文件里面不写GATEWAY项,否则,在启动网络服务(service network

restart)后,默认路由会指向eth0:0所对应的网关。

③、双网卡双IP

vi

/etc/sysconfig/network-scripts/ifcfg-eth0

内容与上面的ifcfg-eth0相同

vi

/etc/sysconfig/network-scripts/ifcfg-eth1

内容与上面的ifcfg-eth0:0基本相同,

改:

DEVICE=eth1

另外:如果在/etc/sysconfig/network-scripts/ifcfg-eth1指定了GATEWAY项,由于网络服务启动后,系统会把ifcfg-eth1中对应的网关做默认路由,这就违背了前面所约定的以电信网关做默认路由的约定,会让你远程ssh不上。这时,需将ifcfg-eth1中的IP和ifcfg-eth0中的IP互换一下。

网关(电信、网通)

④、IP:192.168.15.1

(电信网关服务器)

192.168.16.1

(网通网关服务器)

⑤、电信网关服务器

vi

/etc/sysconfig/network-scripts/ifcfg-eth0

GATEWAY=192.168.15.1

TYPE=Ethernet

DEVICE=eth0

HWADDR=00:0c:29:57:c8:91

BOOTPROTO=none

NETMASK=255.255.255.0

IPADDR=192.168.15.1

BROADCAST=192.168.15.255

ONBOOT=yes

USERCTL=no

IPV6INIT=no

PEERDNS=yes

⑥、网通网关服务器

/etc/sysconfig/network-scripts/ifcfg-eth0内容与电信的一样,改

GATEWAY=192.168.16.1

IPADDR=192.168.16.1

BROADCAST=192.168.16.255

用户主机(电信、网通)

⑦、IP:192.168.13.5

(电信用户主机)

192.168.14.5

(网通用户主机)

⑵、重启网络服务

在网站主机、电信/网关服务器上service network restart

并用route命令查看默认路由情况,注意看网站主机的默认路由。结果应该如下:

⑶、配置各机器的路由

①、网站主机

Ip

route

add

192.168.14.0/24 via

192.168.16.1

②、电信网关服务器

Ip

route

del

default

Ip

route

add

192.168.13.0/24 dev eth0

③、网通网关服务器

Ip route del default

Ip

route

add

192.168.14.0/24 dev eth0

④、电信用户主机

Ip route del default

Ip

route

add

192.168.15.0/24 dev eth0

⑤、网通用户主机

Ip

route

del

default

Ip

route

add

192.168.16.0/24 dev eth0

⑷、测试:

①、电信用户主机

Ping

192.168.15.236

②、网通用户主机

Ping

192.168.16.236

2、设定动态路由

因为就是采取一个策略路由,根据用户访问进来的路径设定动态路由。就是说如果用户是通过电信IP地址访问过来的话,那么使用电信网关做路由,返回内容走电信网关;如果用户通过网通IP地址访问过来的话,那么使用网通网关做路由,返回内容走网通的网关,这样就不必那么麻烦的维护路由表了。以topcmm网站服务器为例,具体配置方法如下:

实现:

⑴、各机器的IP设置和前面所讲的一致

⑵、各机器的路由设置除了网站主机不设置以外,其余的机器与上面所列相同

⑶、网站主机策略路由的设置

①、vi /etc/iproute2/rt_tables

添加

252

tel

(电信线路路由表)

251

cnc

(网通线路路由表)

②、设置tel和cnc路由表的内容

ip route flush table tel

ip route add default via 192.168.15.1 dev eth0 src

192.168.15.236 table tel

ip rule add from 192.168.15.236 table

tel

ip route flush table cnc

ip route add default via 192.168.16.1 dev eth1 src

192.168.16.236 table cnc

ip rule add from 192.168.16.236 table

cnc

⑷、测试:

①、电信用户主机

Ping

192.168.15.236

②、网通用户主机

Ping

192.168.16.236

至此,实现了从电信IP过来的请求按照电信路由返回,从网通IP过来的请求从网通路由返回。

3、几个问题的说明:

⑴、当服务器重启或网络服务重启时,以上设置的各个机器的路由规则就失效了,需要将这些命令写到/etc/rc.local中。

⑵、RedHat,网络启动脚本是/etc/rc.d/init.d/network

⑶、RedHat下配置默认网关,应该是在/etc/sysconfig/network文件里面添加一行:GATEWAY=192.168.15.1

⑷、路由的显示命令

①、Route

②、Ip route show

③、Ip rule show

参观linux服务器机房,LINUX服务器在双线机房实现方法相关推荐

  1. 什么是智能双线机房和BGP智能双线机房的原理

    现代信息技术条件下,想要是一个网站拥有大量的客户群,想要是每一个客户都能够以最快的速度访问网站就必须建立双线机房.前面我们已经论述的什么样的智能机房才是最正确最好的双线机房.这里我就再向大家详细介绍一 ...

  2. 双线机房和双线双IP机房的区别

    文章目录 前言 一.什么是双线双IP机房 二.什么是双线机房 三.双线机房和双线双IP机房的区别 1.接入方式 2.IP地址 3.访问效果 总结 前言 金庸先生的小说中有南慕容北乔峰,同样,对于200 ...

  3. BGP双线机房优点116.211.147.x

    网络给我们生活带来便利的同时一些不法分子也利用网络进行诈骗和恶意攻击破坏网站.这对我们来说无疑是个很大的安全隐患,因此无论是企业和个人都需要有一个安全.高效的网络环境,而如今实现这一要求的就只有BGP ...

  4. 双线机房、多线机房、BGP机房的关系和对比

    文章目录 前言 一.什么是双线机房 二.什么是多线机房 三.什么是BGP机房 总结 前言 数据中心的发展与互联网产业发展密切相关,互联网产业的蓬勃发展,促使数据中心需要不断的革新才能紧跟互联网产业的发 ...

  5. linux服务器lvs,Linux的企业-LVS(Linux虚拟服务器)及FULLNAT设置

    一.Linux Virtual Server (linux虚拟服务) lvs工作于IOS七层模型的传输层,通过对TCP.UDP.SCTP.IPsec ESP.AH这些工作在四层的协议的支持,根据目标地 ...

  6. linux服务器崩,Linux系统崩溃最快速的解决方法

    现象: 在安装HP硬件监控(hpasmcli)提示需要依赖Glibc-2.7,而本机的是Glibc-2.5,看来得升级Glibc了,可惜在升级时又出现了更多的依赖问题,想到在其他服务器上安装hpasm ...

  7. linux服务器 版本 比例,Linux比例近半 服务器操作系统混战开始

    一项为期半年的虚拟化调查表明,企业普遍存在多种服务器操作系统混用的情况:受IT投资环境的影响,IT经理们现在更加重视服务器资源利用率. 据了解,根据不同应用的特点,大多数企业都在数据中心中同时使用了多 ...

  8. Linux集群和自动化维1.3 如何根据服务器应用选购服务器

    1.3 如何根据服务器应用选购服务器 无论物理服务器是选用IDC托管还是AWS EC2云主机(以下为了简略说明,将它们统称为服务器),我们都要面临一个问题,那就是选择服务器的硬件配置,选购硬件配置时要 ...

  9. 服务器怎么连接?服务器远程连接图文教程Windows如何远程连接服务器?Linux服务器如何远程登录?远程连接服务器命令

    服务器怎么连接?服务器远程连接图文教程 Windows如何远程连接服务器?Linux服务器如何远程登录?远程连接服务器命令 服务器操作系统可以实现对计算机硬件与软件的直接控制和管理协调,任何计算机的运 ...

最新文章

  1. Android高效加载大图、多图解决方案,有效避免程序OOM
  2. ssl单向tomcat配置webservice访问方法
  3. mySQL 数据库错误
  4. Atitit 数据类型体系图 目录 1. 系统常用的数据类型 1 2. H5 form表单新数据类型 2 2.1. TML5 新的 Input 类型 2 2.2. HTML5 的新的表单元素: 2
  5. 你知道吗?世界上绝美神奇的25条路
  6. [ZT]新点子,就在空气中飘荡着...
  7. 1043 : 最大值
  8. Python读写xlsx文件
  9. latex footnote numbering
  10. android 日历翻页动画,Android 仿日历翻页、仿htc时钟翻页、数字翻页切换效果
  11. Fuchsia OS 编译教程 2019 年版
  12. 如何安装imgaug
  13. 沪漂程序员的两年,终说再见,你会不会是下一个离开的人?
  14. react路由传参的几种方式
  15. 软考(软件设计师)考点总结 -- 程序设计语言基础
  16. PAT 甲级 英语基础
  17. 导入SpringBoot项目时突然遇到无法找到入口类的情况
  18. 【架构 Flutter实践 Clean架构 TDD测试驱动开发---1.0】
  19. 给wordpress导航菜单添加个性图标
  20. item_search-按关键字搜索vip商品(唯品会API)

热门文章

  1. Spring Security授权_注解设置访问控制
  2. 通过微软实习面试......
  3. Android开发宇视监控播放,宇视科技视频监控(EZPlayer)
  4. 在哪把iphone的计算机,iphone备份在哪?iPhone备份方法
  5. flash闪存使用和STM32CUBEMX安装教程【第三天】
  6. 雨流计数法的matlab实现
  7. CTF中 Crypto(密码学)在线解密网站
  8. 解决-IDEA搭配maven无法从中央仓库下载jar包,或者下载失败的问题
  9. js上传图片 识别条形码
  10. 今日头条分享干货如何引流?今日头条运营引流干货教程