主机头

标题: linux服务器如何绑定IP的方法及教程 [打印本页]

作者: admin    时间: 2013-1-10 19:14
标题: linux服务器如何绑定IP的方法及教程
这是搜索来的。不过也拿来分享。
为了优化网站的谷歌排名,对于一个服务器上两三百个站都用一个Ip肯定是不行的,所以,一般我们服务器上都需要有两百左右的Ip,服务器购置完交付使用后,除了配置优化服务器之外,当然,也需要买更多的IP并绑定到服务器。以softlayer为例,购买IP时,付了钱过后,他们将ip发到你注册的邮箱,例如以下邮件:
  给你的ip格式为 1.1.1.1-1.1.1.20
  当买了很多的时候,就会有很多个这样的格式的Ip,绑定起来比较混乱,所以就编写了以下的脚本,进行批量绑定。希望对读者有所帮助
  首先,我们先把所有的IP放入一个名为allips的文件,如下:
  创建 bindips.sh脚本文件。
  脚本如下:
  #! /bin/bash
  cat allips|awk '{print $1}'》fips
  cat allips|awk '{print $3}'》lips
  range=1
  han=1
  ban=1
  for fips in `cat fips`
  do
  lips=`sed -n "$han"p lips`
  fipslast=`echo $fips|awk -F . '{print $4}'`
  lipslast=`echo $lips|awk -F . '{print $4}'`
  chashu=$(($lipslast-$fipslast+1))
  cat >>/etc/sysconfig/network-scripts/ifcfg-eth1-range$range《EOF
  IPADDR_START=$fips
  IPADDR_END=$lips
  NETMASK=255.255.255.255
  CLONENUM_START=$ban
  EOF
  ban=$(($ban+$chashu))
  han=$(($han+1))
  range=$(($range+1))
  done
  完成
  脚本解释
  fips为所有的首IP存放位置,即上图中所有左侧的IP
  lips为所有的末Ip存放位置,即上图上所有右侧的Ip
  #! /bin/bash
  cat allips|awk '{print $1}'》fips   #将所有左侧的IP导入fips文件
  cat allips|awk '{print $3}'》lips   #将所有右侧的IP导入lips文件
  range=1          #设定range起始值 (关于range,在篇末解释)
  han=1            #设定读取lips行的起始值
  ban=0            #设定虚拟网卡的起始值
  for fips in `cat fips`        #读取fips里的所有Ip
  do
  lips=`sed -n "$han"p lips`    #在lips文件里找到对应的IP
  fipslast=`echo $fips|awk -F . '{print $4}'`  #找出fips的D段的值
  lipslast=`echo $lips|awk -F . '{print $4}'`  #找出lips的D段的值
  chashu=$(($lipslast-$fipslast+1))  #将lips的D段的值减去lips的D段的值加1,                                       则是此Ip段所有可用的ip
  cat >>/etc/sysconfig/network-scripts/ifcfg-eth1-range$range《EOF
  IPADDR_START=$fips
  IPADDR_END=$lips
  NETMASK=255.255.255.255
  CLONENUM_START=$ban
  EOF
  #创建/etc/sysconfig/network-scripts/ifcfg-eth1-range? 文件,并导入内容。内容为起始ip, 结束ip,和绑定的虚拟网卡起始值。
  ban=$(($ban+$chashu))   #循环一次后绑定的网卡值加上当前可用的IP数,则就是下一个ip段绑定的虚拟网卡起始值。
  han=$(($han+1))        # 循环一次后,读取lips的下一行的值
  range=$(($range+1))    # 循环一次后,写入下一个range
  done                   #结束
  运行脚本文件
  sh bindips.sh
  重启 network
  service network restart  (远程服务器一定要restart ,不然就断了)
  即可绑定好所有的IP. 至此已全部完成,如果有不懂可联系我进行技术交流:QQ:410018348
  range 知识:(我个人理解)
  linux 网卡中的range,应该是说指定一个ip范围,里面有很多参数,其中最重要的几个参数为起始ip,结束Ip,网卡起始值,子网掩码,是否开机绑定( 默认开启)
  例如:
  IPADDR_START=192.126.1.1
  IPADDR_END=192.168.1.20
  NETMASK=255.255.255.255
  CLONENUM_START=1
  上面的例子中,IPADDR_START:为起始的ip
  IPADDR_END:  为结束的IP
  NETMASK:     为子网掩码
  UM_START:为绑定的网卡起始值,假为第一个ip为192.168.1.1 绑定的网卡为  eth0:1, 第二个Ip为192.168.1.2 ,则绑定的网卡为eth0:2  ,以此类推。
  服务器案例:
  1,  如图输入好
2,重启网卡
3,使用ifconfig命令查看是否绑定成功
  至此已完成全部操作。






欢迎光临 主机头 (http://zhujitou.com/) Powered by Discuz! X2.5