有时你也许想要给一个网卡多个地址。你该怎么做呢?另外买一个网卡来分配地址?在小型网络中其实不用这么做。我们现在可以在CentOS/RHEL 7中给一个网卡分配多个ip地址。想知道怎么做么?好的,跟随我,这并不难。

首先,让我们找到网卡的IP地址。在我的CentOS 7服务器中,我只使用了一个网卡。

用root特权运行下面的命令:


  1. ip addr

示例输出:


  1. 1: lo: <LOOPBACK,UP,LOWER_UP> mtu 65536 qdisc noqueue state UNKNOWN
  2. link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00
  3. inet 127.0.0.1/8 scope host lo
  4. valid_lft forever preferred_lft forever
  5. inet6 ::1/128 scope host
  6. valid_lft forever preferred_lft forever
  7. 2: enp0s3: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast state UP qlen 1000
  8. link/ether 08:00:27:80:63:19 brd ff:ff:ff:ff:ff:ff
  9. inet 192.168.1.150/24 brd 192.168.1.255 scope global enp0s3
  10. valid_lft forever preferred_lft forever

如上所见,我的网卡名是enp0s3,ip地址是192.168.1.150。

如你所知,网卡的配置文件存储在 /etc/sysconfig/network-scripts/ 目录下。每个网卡的详细内容将会以不同的名字存储,比如ifcfg-enp0s3

让我们看下ifcfg-enp0s3的细节。


  1. cat /etc/sysconfig/network-scripts/ifcfg-enp0s3

示例输出:


  1. TYPE="Ethernet"
  2. BOOTPROTO="none"
  3. DEFROUTE="yes"
  4. IPV4_FAILURE_FATAL="no"
  5. IPV6INIT="yes"
  6. IPV6_AUTOCONF="yes"
  7. IPV6_DEFROUTE="yes"
  8. IPV6_FAILURE_FATAL="no"
  9. NAME="enp0s3"
  10. UUID="e9f9caef-cb9e-4a19-aace-767c6ee6f849"
  11. ONBOOT="yes"
  12. HWADDR="08:00:27:80:63:19"
  13. IPADDR0="192.168.1.150"
  14. PREFIX0="24"
  15. GATEWAY0="192.168.1.1"
  16. DNS1="192.168.1.1"
  17. IPV6_PEERDNS="yes"
  18. IPV6_PEERROUTES="yes"

好的,现在我们将在相同的子网中分配多个地址了。

编辑文件 /etc/sysconfig/network-scripts/ifcfg-enp0s3


  1. vi /etc/sysconfig/network-scripts/ifcfg-enp0s3

像下面那样加入额外的IP地址。


  1. TYPE="Ethernet"
  2. BOOTPROTO="none"
  3. DEFROUTE="yes"
  4. IPV4_FAILURE_FATAL="no"
  5. IPV6INIT="yes"
  6. IPV6_AUTOCONF="yes"
  7. IPV6_DEFROUTE="yes"
  8. IPV6_FAILURE_FATAL="no"
  9. NAME="enp0s3"
  10. UUID="933cdc9b-b383-4ddd-b219-5a72c69c9cf0"
  11. ONBOOT="yes"
  12. HWADDR="08:00:27:3F:AB:68"
  13. IPADDR0="192.168.1.150"
  14. IPADDR1="192.168.1.151"
  15. IPADDR2="192.168.1.152"
  16. PREFIX0="24"
  17. GATEWAY0="192.168.1.1"
  18. DNS1="192.168.1.1"
  19. IPV6_PEERDNS="yes"
  20. IPV6_PEERROUTES="yes"

如你所见,我已经加了两个IP地址:IPADDR1=”192.168.1.151″ & IPADDR2=”192.168.1.152″

类似地,你可以加入更多的ip地址。

最后,保存并退出文件。重启网络服务来使更改生效。


  1. systemctl restart network

现在,让我们检查是否已经加入了ip地址。


  1. ip addr

示例输出:


  1. : lo: <LOOPBACK,UP,LOWER_UP> mtu 65536 qdisc noqueue state UNKNOWN
  2. link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00
  3. inet 127.0.0.1/8 scope host lo
  4. valid_lft forever preferred_lft forever
  5. inet6 ::1/128 scope host
  6. valid_lft forever preferred_lft forever
  7. 2: enp0s3: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast state UP qlen 1000
  8. link/ether 08:00:27:3f:ab:68 brd ff:ff:ff:ff:ff:ff
  9. inet 192.168.1.150/24 brd 192.168.1.255 scope global enp0s3
  10. valid_lft forever preferred_lft forever
  11. inet 192.168.1.151/24 brd 192.168.1.255 scope global secondary enp0s3
  12. valid_lft forever preferred_lft forever
  13. inet 192.168.1.152/24 brd 192.168.1.255 scope global secondary enp0s3
  14. valid_lft forever preferred_lft forever
  15. inet6 fe80::a00:27ff:fe3f:ab68/64 scope link
  16. valid_lft forever preferred_lft forever

如你所见,单个网卡已经有3个ip地址了。

让我们ping一下新增的IP地址:


  1. ping -c 4 192.168.1.151

示例输出:


  1. PING 192.168.1.151 (192.168.1.151) 56(84) bytes of data.
  2. 64 bytes from 192.168.1.151: icmp_seq=1 ttl=64 time=0.048 ms
  3. 64 bytes from 192.168.1.151: icmp_seq=2 ttl=64 time=0.075 ms
  4. 64 bytes from 192.168.1.151: icmp_seq=3 ttl=64 time=0.077 ms
  5. 64 bytes from 192.168.1.151: icmp_seq=4 ttl=64 time=0.077 ms
  6. --- 192.168.1.151 ping statistics ---
  7. 4 packets transmitted, 4 received, 0% packet loss, time 2999ms
  8. rtt min/avg/max/mdev = 0.048/0.069/0.077/0.013 ms


  1. ping -c 4 192.168.1.152

示例输出:


  1. PING 192.168.1.152 (192.168.1.152) 56(84) bytes of data.
  2. 64 bytes from 192.168.1.152: icmp_seq=1 ttl=64 time=0.034 ms
  3. 64 bytes from 192.168.1.152: icmp_seq=2 ttl=64 time=0.075 ms
  4. 64 bytes from 192.168.1.152: icmp_seq=3 ttl=64 time=0.073 ms
  5. 64 bytes from 192.168.1.152: icmp_seq=4 ttl=64 time=0.075 ms
  6. --- 192.168.1.152 ping statistics ---
  7. 4 packets transmitted, 4 received, 0% packet loss, time 2999ms
  8. rtt min/avg/max/mdev = 0.034/0.064/0.075/0.018 ms

如果你想要使用不同的子网,你要改变PREFIX0=24成不同的子网,比如 PREFIX1=16

比如,我想要添加一个A类地址(*比如10.0.0.1)到我的网卡中。


  1. TYPE="Ethernet"
  2. BOOTPROTO="none"
  3. DEFROUTE="yes"
  4. IPV4_FAILURE_FATAL="no"
  5. IPV6INIT="yes"
  6. IPV6_AUTOCONF="yes"
  7. IPV6_DEFROUTE="yes"
  8. IPV6_FAILURE_FATAL="no"
  9. NAME="enp0s3"
  10. UUID="933cdc9b-b383-4ddd-b219-5a72c69c9cf0"
  11. ONBOOT="yes"
  12. HWADDR="08:00:27:3F:AB:68"
  13. IPADDR0="192.168.1.150"
  14. IPADDR1="192.168.1.151"
  15. IPADDR2="192.168.1.152"
  16. IPADDR3="10.0.0.1"
  17. PREFIX0="24"
  18. PREFIX1=16
  19. GATEWAY0="192.168.1.1"
  20. DNS1="192.168.1.1"
  21. IPV6_PEERDNS="yes"
  22. IPV6_PEERROUTES="yes"

你可以看到我已经添加一个A类地址(10.0.0.1)并且前缀是16。

保存并退出文件。重启网络服务,接着,ping新增的地址:


  1. ping -c 4 10.0.0.1

示例输出:


  1. PING 10.0.0.1 (10.0.0.1) 56(84) bytes of data.
  2. 64 bytes from 10.0.0.1: icmp_seq=1 ttl=64 time=0.097 ms
  3. 64 bytes from 10.0.0.1: icmp_seq=2 ttl=64 time=0.073 ms
  4. 64 bytes from 10.0.0.1: icmp_seq=3 ttl=64 time=0.074 ms
  5. 64 bytes from 10.0.0.1: icmp_seq=4 ttl=64 time=0.075 ms
  6. --- 10.0.0.1 ping statistics ---
  7. 4 packets transmitted, 4 received, 0% packet loss, time 3000ms
  8. rtt min/avg/max/mdev = 0.073/0.079/0.097/0.014 ms

相似地,你可以添加不同的网关。

就是这样。

在CentOS 7上给一个网卡分配多个IP地址的更多相关文章

  1. CentOS 7 救援模式启用网卡及重新获取IP地址

    重新自动获取IP地址命令: dhclient 启用网卡命令 ifconfig ens33 up https://blog.csdn.net/hongmin118/article/details/782 ...

  2. windows 2003一个网卡绑定多个IP地址

    1.打开“网络连接”,选中需要添加多个IP的“本地连接”-->右键-->“属性”: 2.从“常规”中找到“Internet 协议(TCP/IP)属性”: 3.选择手动设置IP地址.网关.掩 ...

  3. CentOS7 一个网卡配置多个IP地址

    1.给网卡p8p1新创建配置文件(复制原来的p8p1,修改IP地址即可) ifcfg-p8p1:0 vim  /etc/sysconfig/network-scripts/ifcfg-p8p1:0 D ...

  4. 关于linux Centos 7一个网卡配置多个IP的方法

    有时我们在工作中,会遇到一个网卡配置多个ip的情况,尤其是在linux服务器方面的应用教多 于是笔者将其配置过程整理如下,希望能帮到遇到同样问题的朋友,这里以vmware虚拟机下的Centos 7为例 ...

  5. centos linux系统日常管理复习 CPU物理数逻辑核数,iftop ,iotop ,sar ,ps,netstat ,一网卡多IP,mii-tool 连接,ethtool速率,一个网卡配置多个IP,mii-tool 连接,ethtool速率 ,crontab备份, 第十八节课

    centos linux系统日常管理复习 物理CPU和每颗CPU的逻辑核数,uptime ,w,vmstat,iftop ,iotop ,sar ,ps,netstat ,一个网卡配置多个IP,mii ...

  6. linux下一个网卡配置多个ip【虚拟ip】

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

  7. 虚拟IP---Linux下一个网卡配置多个IP

    转:http://blog.csdn.net/turkeyzhou/article/details/16971225 Linux下配置网卡ip别名何谓ip别名?用windows的话说,就是为一个网卡配 ...

  8. Linux中一个网卡含有多个IP,将从IP升级为主IP的方法

    今天在查看虚拟机的时候,发现某一网卡含有多个IP地址: eno16777736: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu qdisc pfifo_fas ...

  9. linux系统单网卡绑定多个IP地址

    说明: 单网卡绑定两个IP地址,电信和联通,目的:是为了当电信出故障联通正常使用. 系 统 IP地址 子网掩码 网关 CentOS 6.3_64bit eth0:116.18.176.19 255.2 ...

随机推荐

  1. Graceful degradation versus progressive enhancement

    http://ued.taobao.org/blog/2008/10/understanding-progressiveen-hancement-chs-translation/ http://www ...

  2. Material

    renderer.material  物理材质 实现二维图上的人物动作 新建Material,选择Shader(著色器)为transparent/diffuse(背景透明),将上图拉到背景图选项中. ...

  3. Class类工具 - ClassUtils.java

    Class类工具,提供操作class类的方法.<br/>比如:获知类.方法上是否有注解,获取类注解,获取某package下所有class等. 源码如下:(点击下载 - ClassUtils ...

  4. loadrunner-增加检查点(web_reg_find)

    接口性能测试地址: http://192.168.x.x:x/tionWeb/Ajax_GetStock.aspx?stockcode=600571 性能测试脚本: Action() { lr_sta ...

  5. modernizr.js

    1.判断浏览器是否支持 h5 if(Modernizr.canvas){ alert(123); }else{ alert(321); } 2.判断浏览器是否支持 canvas function su ...

  6. 升级到win8.1后除IE11外,其它浏览器无法打开网页解决办法

    原文 : http://productforums.google.com/forum/#!topic/chrome/TUDjVQzf4Os 用管理员方式打开cmd 输入 netsh winsock r ...

  7. Least Common Ancestors 分类: ACM TYPE 2014-10-19 11:24 84人阅读 评论(0) 收藏

    #include <iostream> #include <cstdio> #include <cstring> #include <cmath> #i ...

  8. 最全的dedeCMS标签调用技巧和大全

    1. 页面php方法获取字段  $refObj->Fields['id']; 2. 在页面上使用PHP连接数据库查询 {dede:php} $db = new DedeSql(false); $ ...

  9. C#单链表(数据结构)

    学习单链表的源码项目:http://files.cnblogs.com/xmfdsh/CSharp%E5%8D%95%E9%93%BE%E8%A1%A8.rar 链表是用一组任意的存储单元来存储线性表 ...

  10. 如何使用CSL(翻译总结自TI官方文档)

    为了使用CSL来进行编译和连接,必须先配置CCS开发环境. 1.指定目标设备 Project/options/complier/preprocessor,在define symbols中输入设备支持符 ...