博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
IP Alias - linux中单网卡多IP
阅读量:6853 次
发布时间:2019-06-26

本文共 6360 字,大约阅读时间需要 21 分钟。

最近由于测试的需要,

在一台linux 机器下配置单网卡多个IP,

脚本如下

#!/bin/sh# ip_alias.sh#author.....#20130110#for addint or delete 1,000 net-card alias#from 10.3.231.1~200#from 10.3.232.1~200#from 10.3.233.1~200#from 10.3.234.1~200#from 10.3.235.1~200#10.3.231.1         168027905    #10.3.231.200        168028104#10.3.232.1         168028161#10.3.232.200        168028360#10.3.233.1         168028417#10.3.233.200        168028616#10.3.234.1         168028673#10.3.234.200        168028872#10.3.235.1         168028929#10.3.235.200        168029128#usage: sh ip_alias.sh add#usage: sh ip_alias.sh delcc_max=235bb_max=200ip_pre="10.3."net_card_num=0;if [ "$1" == "add" ];thenfor (( i = 231; i <= cc_max ; i ++ ))do        for ((j = 1; j <= bb_max; j ++))        do                ip=${ip_pre}${i}"."${j}                let net_card_num+=1;                echo $net_card_num;                ifconfig eth0:$net_card_num $ip netmask 255.255.0.0 up                echo $ip        donedoneelif [ "$1" == "del" ];then        for (( i = 231; i <= cc_max ; i ++ ))        do                for ((j = 1; j <= bb_max; j ++))                do                        ip=${ip_pre}${i}"."${j}                        let net_card_num+=1;                        echo $net_card_num;                        ifconfig eth0:$net_card_num $ip netmask 255.255.0.0 down                        echo $ip                donedoneelse        echo "error parameter"        echo "#usage: sh ip_alias.sh add"        echo "#usage: sh ip_alias.sh del"fi

参考了...

 

 

IP Alias - linux中单网卡多IP

可以运行命令ifconfig 添加IP Alias 
在eth0:0上添加IP地址192.168.0.128/255.255.255.0
复制内容到剪贴板
代码:
# ifconfig eth0:0 192.168.0.128netmask 255.255.255.0 up
删除IP Alias eth0:0
复制内容到剪贴板
代码:
# ifconfig eth0:0 down
为一块网卡配置多IP可以通过命令行设置也可以通过配置文件设置,以下我分别通过这两种方式实现:
1.用命令行设置
复制内容到剪贴板
代码:
ifconfig命令格式:ifconfig 设备名 IP netmask 掩码 broadcast 广播地址 动作
# ifconfig
复制内容到剪贴板
代码:
eth0 Link encap:Ethernet HWaddr 00:0E:1F:01:6C:50
inet addr:192.168.16.108 Bcast:192.168.16.255 Mask:255.255.255.0
UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1
RX packets:2 errors:0 dropped:0 overruns:0 frame:0
TX packets:6 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:100
RX bytes:224 (224.0 b) TX bytes:387 (387.0 b)
Interrupt:11 Base address:0x2000
lo Link encap:Local Loopback
inet addr:127.0.0.1 Mask:255.0.0.0
UP LOOPBACK RUNNING MTU:16436 Metric:1
RX packets:773 errors:0 dropped:0 overruns:0 frame:0
TX packets:773 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:0
RX bytes:52352 (51.1 Kb) TX bytes:52352 (51.1 Kb)
可以看到,当前eth0的IP为192.168.16.108,此时请注意一下MAC(00:0E:1F:01:6C:50)
现在我们为eth0绑定另一个IP,设备为eth0:0,可以看到,现在又多了一个IP,注意,网卡实际上只有一块(可以看MAC,都为00:0E:1F:01:6C:50),却绑定了两个IP,可以依此配置多个IP。
复制内容到剪贴板
代码:
# ifconfig eth0:0 192.168.1.100 netmask 255.255.255.0
# ifconfig
复制内容到剪贴板
代码:
eth0 Link encap:Ethernet HWaddr 00:0E:1F:01:6C:50
inet addr:192.168.16.108 Bcast:192.168.16.255 Mask:255.255.255.0
UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1
RX packets:29 errors:0 dropped:0 overruns:0 frame:0
TX packets:6 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:100
RX bytes:2879 (2.8 Kb) TX bytes:387 (387.0 b)
Interrupt:11 Base address:0x2000
eth0:0 Link encap:Ethernet HWaddr 00:0E:1F:01:6C:50
inet addr:192.168.1.100 Bcast:192.168.1.255 Mask:255.255.255.0
UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1
RX packets:29 errors:0 dropped:0 overruns:0 frame:0
TX packets:6 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:100
RX bytes:2879 (2.8 Kb) TX bytes:387 (387.0 b)
Interrupt:11 Base address:0x2000
lo Link encap:Local Loopback
inet addr:127.0.0.1 Mask:255.0.0.0
UP LOOPBACK RUNNING MTU:16436 Metric:1
RX packets:7329 errors:0 dropped:0 overruns:0 frame:0
TX packets:7329 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:0
RX bytes:500674 (488.9 Kb) TX bytes:500674 (488.9 Kb)
2.通过配置文件设置多IP
网卡IP配置的文件在/etc/sysconfig/network-scripts/下,文件分别为ehtx或ethx:x
# cd /etc/sysconfig/network-scripts/
# ls
ifcfg-eth0 ifdown-ippp ifdown-ppp ifup-
aliases ifup-isdn ifup-ppp ifup-wireless
ifcfg-lo ifdown-ipv6 ifdown-sit ifup-ippp ifup-plip ifup-routes 
init.ipv6-global
ifdown ifdown-isdn ifdown-sl ifup-ipv6 ifup-plusb ifup-sit network-functions
ifdown-aliases ifdown-post ifup ifup-ipx ifup-post ifup-sl network-functions-ipv6
#这是eth0的对应的内容
#vi ifcfg-eth0
复制内容到剪贴板
代码:
DEVICE=eth0
BOOTPROTO=none
ONBOOT=yes
USERCTL=no
PEERDNS=yes
TYPE=Ethernet
IPADDR=192.168.16.108
NETMASK=255.255.255.0
HWADDR=00:0e:1f:01:6c:50
GATEWAY=192.168.16.1
NETWORK=192.168.16.0
BROADCAST=192.168.16.255
配置另一IP,因我们刚才已配置了eth0:0,所以此时要用eth0:1了
# cp ifcfg-eth0 ifcfg-eth0:1
修改配置文件,内容如下
# vi ifcfg-eth0:1
复制内容到剪贴板
代码:
DEVICE=eth0:1
ONBOOT=yes
BOOTPROTO=static
IPADDR=192.168.2.100
NETMASK=255.255.255.0
NETWORK=192.168.2.0
启动eth0:1,查看,此时是不是就已经有三个IP了?
# ifup eth0:1
# ifconfig
复制内容到剪贴板
代码:
eth0 Link encap:Ethernet HWaddr 00:0E:1F:01:6C:50
inet addr:192.168.16.108 Bcast:192.168.16.255 Mask:255.255.255.0
UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1
RX packets:52 errors:0 dropped:0 overruns:0 frame:0
TX packets:10 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:100
RX bytes:6037 (5.8 Kb) TX bytes:627 (627.0 b)
Interrupt:11 Base address:0x2000
eth0:0 Link encap:Ethernet HWaddr 00:0E:1F:01:6C:50
inet addr:192.168.1.100 Bcast:192.168.1.255 Mask:255.255.255.0
UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1
RX packets:52 errors:0 dropped:0 overruns:0 frame:0
TX packets:10 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:100
RX bytes:6037 (5.8 Kb) TX bytes:627 (627.0 b)
Interrupt:11 Base address:0x2000
eth0:1 Link encap:Ethernet HWaddr 00:0E:1F:01:6C:50
inet addr:192.168.2.100 Bcast:192.168.2.255 Mask:255.255.255.0
UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1
RX packets:52 errors:0 dropped:0 overruns:0 frame:0
TX packets:10 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:100
RX bytes:6037 (5.8 Kb) TX bytes:627 (627.0 b)
Interrupt:11 Base address:0x2000
lo Link encap:Local Loopback
inet addr:127.0.0.1 Mask:255.0.0.0
UP LOOPBACK RUNNING MTU:16436 Metric:1
RX packets:14131 errors:0 dropped:0 overruns:0 frame:0
TX packets:14131 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:0
RX bytes:965895 (943.2 Kb) TX bytes:965895 (943.2 Kb)
OK,配置成功,这个随便你用哪种方法都可以,用配置文件的方法可以写一些注释,而用ifconfig则简单方便,这就看你的爱好了。
转自:

转载于:https://www.cnblogs.com/vimmer/archive/2013/01/15/2860668.html

你可能感兴趣的文章
一篇文章让你全部看懂!内存-java模型-jvm结构
查看>>
[转] Valgrind使用
查看>>
0023-HOSTS配置问题导致集群异常故障分析
查看>>
《软件开发工具》要点
查看>>
iOS开发 图形变换-做一个正方体
查看>>
jhead命令详解
查看>>
OC中initialize方法和init方法的区别
查看>>
一些不可思议的小问题
查看>>
界面间传值
查看>>
3.vsphere client的安装
查看>>
Linux实现最常用的磁盘阵列-- RAID5
查看>>
简单的菜单 menu
查看>>
Intellij Idea 2017创建非Maven web项目使用tomcat部署实战
查看>>
工程DHCP配置
查看>>
GIL(全局解释器锁)与互斥锁
查看>>
我的友情链接
查看>>
Git常用操作及分支
查看>>
关于一种求最大公约数的算法的分析与证明
查看>>
微信授权莫名创建用户数据失败的原因
查看>>
网络高手修身
查看>>