linux设置多个IP

Linux下配置网卡ip别名

何谓ip别名?
windows的话说,就是为一个网卡配置多个ip
什么场合增加ip别名能派上用场?
布网需要、多ip访问测试、特定软件对多ip的需要...and so on.

下面通过几个例子简单介绍一下如何使用ifconfig命令给网卡配置ip别名。

环境:新购买的服务器,刚装好RedHat AS4操作系统,只有一个网卡并且干干净净没做过任何配置。


一、首先为服务器网卡配置静态ip地址
#ifconfig eth0 192.168.6.99 netmask 255.255.255.0 up

eth0                     //
机器的第一个网卡,有些机器有多个网卡,eth1eth2...
192.168.6.99                       //
设置网卡的静态ip地址

netmask 255.255.255.0   //ip
地址的子网掩码,无需多解释
up                          //
表示立即激活该网卡

#ifconfig
if
一下,如图所示静态ip已经设置成功

 




二、设置网卡的ip别名
#ifconfig eth0:0 192.168.6.100 netmask 255.255.255.0 up
#ifconfig eth0:1 173.173.173.173 netmask 255.255.255.0 up
#ifconfig eth0:2 119.110.120.1 netmask 255.255.255.0 up
......

eth0:x                    //
虚拟网络接口,建立在eth0上,取值范围0-255
192.168.6.xxx      //
增加ip别名,想加多少就加多少~~


#ifconfig
设置完我们if一下看看,如图所示,增加的ip都已经生效了



#ping 192.168.6.100
#ping 173.173.173.173
#ping 119.110.120.1
然后在本机分别ping一下这几个ip,如图所示一路畅通~~




*注意:在设置ip别名时,如果增加的是和局域网同一网段的ip(如192.168.6.100),那么除了本机外局域网内其他机器都可以ping通这个ip
如果增加的是奇形怪状的ip,那么就只有本机可以ping通而已,后者主要用于本机测试需要。


三、保留网卡的ip别名信息
当我们汗流浃背的增加了nip,正准备大展拳脚进行项目测试时,突然~~停电了...xx@#$%,转眼月上枝头,好不容易来电了打开电脑一看,傻了~~刚刚增加的ip全没了???
原来当系统重启后,所有的ip别名都会丢失...rpwt...xx$#%@
基于linux这个特点,所以如果需要长时间使用ip别名,最好将别名信息保存起来,一般方法有两个,如下:


1.
将增加ip别名的命令填写到/etc/rc.local文件中
即将所有如这样ifconfig eth0:0 192.168.6.100 netmask 255.255.255.0 up的命令一行行全部填写到rc.local文件中去,rc.local文件是作用于linux开机自动执行命令,详细用法gb一下,这里不详细说明。
这个方法最方便,但不太可靠,有时会失灵。

2.手动编写ip别名的网卡配置文件
所有网卡的配置文件都保存在/etc/sysconfig/network-scripts目录中,一个网卡对应一个配置文件,如图:

 


多vlan 多IP

1.      加载8021q

modprobe 8021q

2.      vconfig add eth0 2

3.      配置IPMAC

Ipconfig –s  eth0.2  192.168.42.129 broadcast 192.168.42.0 netmask 255.255.255.0 up

--------------bingIP.h---------------------

#include<stdlib.h>
#include<stdio.h>

int main()
{
 int i=-1;
 char *p="vconfig add eth0 254";
 i=system(p);
 printf("%d",i);
 return 0;
}

----------------addIp.sh--------------

#! /bin/sh
modprobe 8021q
i=2
j=1
k=131
while (($j!=0))&&(($i<120))
do
        vconfig add eth0 $i 2>/dev/null
        j=$?
        i=$(($i+1))
        k=$(($k+1))
done
i=$(($i-1))
ifconfig eth0.$i 192.168.42.$k broadcast 192.168.42.0 netmask 255.255.255.0

-----------------DelIp.sh-----------------

for((i=1;i<120;i++))
do
        vconfig rem eth0.$i 2>/dev/null
done

 

 

 

 多网卡

/etc/sysconfig/network-scripts/eth0

添加eth1文件,文件内容如下

静态IP:

 

DEVICE=eth1
ONBOOT=yes
BOOTPROTO=static
IPADDR=192.168.0.18
NETMASK=255.255.255.0
GATEWAY=192.168.0.1

 

DEVICE=eth0
BOOTPROTO=dhcp
DHCPCLASS=
HWADDR=00:0C:29:ED:8D:F1
ONBOOT=yes

运行:

/etc/init.d/network reload


动态IP
文件ifcfg-eth0就是本机网卡的配置文件,我们可以通过仿照这个文件的格式来编写其他ip别名的配置文件。

#vi ifcfg-eth0
打开网卡的配置文件,将里面所有字段复制一下
#vi ifcfg-eth0:0
创建eth0:0的配置文件,并将刚才复制的字段粘贴到这个配置文件,按照下文的介绍修改部分信息,修改完成后保存退出

以下是网卡配置文件的部分信息说明,其他类似信息默认即可:
##############################################################################

# 3Com Corporation 3c905B 100BaseTX [Cyclone]    //
硬件型号,忽略不计
DEVICE=eth0:0                 //
虚拟网络接口,随意                                   
ONBOOT=yes                    //
系统启动时激活

BOOTPROTO=static             //
使用静态ip地址               
IPADDR=192.168.6.100          //
该虚拟网络接口的ip别名,随意

NETMASK=255.255.255.0         //
子网掩码,对应ip别名
GATEWAY=192.168.6.1           //
网关,对应ip别名
HWADDR=00:10:5A:5E:B1:E4      //
网卡MAC地址,无需更改                  
USERCTL=no                    //
是否给予非root用户设备管理权限


##############################################################################

其他ip别名的配置文件大同小异,纯粹体力活~~
这个方法最繁琐,但又是最可靠,唉,人生就是这样,永远不得两全其美~~


四、清除ip别名
#ifconfg eth0:0 down
#ifconfg eth0:1 down
#ifconfg eth0:2 down

 

  • 0
    点赞
  • 8
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值