在CentOS 7上给一个网卡分配多个IP地址的方法

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

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

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

ip addr

示例输出:

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

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

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

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

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

示例输出:

TYPE="Ethernet"
BOOTPROTO="none"
DEFROUTE="yes"
IPV4_FAILURE_FATAL="no"
IPV6INIT="yes"
IPV6_AUTOCONF="yes"
IPV6_DEFROUTE="yes"
IPV6_FAILURE_FATAL="no"
NAME="enp0s3"
UUID="e9f9caef-cb9e-4a19-aace-767c6ee6f849"
ONBOOT="yes"
HWADDR="08:00:27:80:63:19"
IPADDR0="192.168.1.150"
PREFIX0="24"
GATEWAY0="192.168.1.1"
DNS1="192.168.1.1"
IPV6_PEERDNS="yes"
IPV6_PEERROUTES="yes"

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

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

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

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

TYPE="Ethernet"
BOOTPROTO="none"
DEFROUTE="yes"
IPV4_FAILURE_FATAL="no"
IPV6INIT="yes"
IPV6_AUTOCONF="yes"
IPV6_DEFROUTE="yes"
IPV6_FAILURE_FATAL="no"
NAME="enp0s3"
UUID="933cdc9b-b383-4ddd-b219-5a72c69c9cf0"
ONBOOT="yes"
HWADDR="08:00:27:3F:AB:68"
IPADDR0="192.168.1.150"
IPADDR1="192.168.1.151"
IPADDR2="192.168.1.152"
PREFIX0="24"
GATEWAY0="192.168.1.1"
DNS1="192.168.1.1"
IPV6_PEERDNS="yes"
IPV6_PEERROUTES="yes"

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

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

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

systemctl restart network

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

ip addr

示例输出:

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

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

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

ping -c 4 192.168.1.151

示例输出:

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

示例输出:

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

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

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

TYPE="Ethernet"
BOOTPROTO="none"
DEFROUTE="yes"
IPV4_FAILURE_FATAL="no"
IPV6INIT="yes"
IPV6_AUTOCONF="yes"
IPV6_DEFROUTE="yes"
IPV6_FAILURE_FATAL="no"
NAME="enp0s3"
UUID="933cdc9b-b383-4ddd-b219-5a72c69c9cf0"
ONBOOT="yes"
HWADDR="08:00:27:3F:AB:68"
IPADDR0="192.168.1.150"
IPADDR1="192.168.1.151"
IPADDR2="192.168.1.152"
IPADDR3="10.0.0.1"
PREFIX0="24"
PREFIX1=16
GATEWAY0="192.168.1.1"
DNS1="192.168.1.1"
IPV6_PEERDNS="yes"
IPV6_PEERROUTES="yes"

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

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

ping -c 4 10.0.0.1

示例输出:

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

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

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持我们。

(0)

相关推荐

  • VMware中让CentOS利用桥接上网的方法教程

    如何选择正确的方式上网,直白地说,就是以下几点: 要使虚拟机能连接互联网,并且外部网络或局域网能访问到虚拟机(独立公网 IP 或局域网 IP),使用桥接模式 要使虚拟机能连接互联网,但是不在意虚拟机与宿主机是否能通信(比如连接 SSH),外部网络不能访问虚拟机,使用 NAT 模式 要使虚拟机不能连接互联网,但是需要虚拟机与宿主机相互通信,使用 HOST-ONLY 模式 这里记录下在 VMware 中使 CentOS 利用桥接上网的方法(其实网上方法是可行的-) 第一步:设置 VMware 在 V

  • CentOS6.2网卡设置

    下面主要介绍在CentOS6.2下使用系统自带的bonding进行网卡绑定的详细步骤. 注意:请在配置前关闭NetworkManager服务[root@h63 ~]# service NetworkManager status && service NetworkManager start网卡绑定一次可以绑定多个网卡,你可以使用ifconfig -a查看你的网卡信息,例如:[root@h63 ~]# ifconfig -a em1       Link encap:Ethernet  HW

  • 详解CentOS 6.5如何安装Realtek无线网卡驱动

    一.安装前的准备工作   [a] 检查无线网卡驱动的安装情况(通过查看网络接口的安装情况来检查) 在虚拟终端下输入: #> iwconfig 若显示如下信息,则表示未安装无线网卡驱动 lo no wireless extensions. # 本地回环接口 eth0 no wireless extensions. # 以太网接口 若显示如下信息,则表示已安装了 lo no wireless extension. eth0 no wireless extension. wlan0 Nickname:

  • 详解Virtual Box配置CentOS7网络(图文教程)

    之前很多次安装CentOS7虚拟机,每次配置网络在网上找教程,今天总结一下,全图文配置,方便以后查看. Virtual Box可选的网络接入方式包括: NAT 网络地址转换模式(NAT,Network Address Translation) Bridged Adapter 桥接模式 Internal 内部网络模式 Host-only Adapter 主机模式 具体的区别网上的资料很多,就不再描述了,下面是一个最直接有效的配置,配置CentOS7虚拟机里面能上外网,而主机与CentOS7虚拟机也

  • Centos虚拟机上网配置IP方法

    本文主要是介绍了CentOS虚拟机需要上网快速配置IP,如果是虚拟机直接上网很简单,如果是和主机互联需要桥链接,具体如下: 如果仅仅是虚拟机需要上网,则很简单 1.进入Centos系统,查看网络配置. 输入命令:ifconfig -a 2.进入ifcfg-eth0文件. 输入命令:vim /etc/sysconfig/network-scripts/ifcfg-eth0 注:非root账户需加sudo,否则无权限编辑,或者直接su切换到root用户下. 3.配置动态IP. 通过修改ifcfg-e

  • Centos 7开启网卡自动获取IP的详细方法

    Centos7默认安装是没有开启配置网卡信息的,无法访问外网. 下边配置打开网络自动获取Ip地址 1.查看网卡信息 执行Ifconfig eno16777736: flags=4163<UP,BROADCAST,RUNNING,MULTICAST> mtu 1500 inet6 fe80::20c:29ff:fee8:8637 prefixlen 64 scopeid 0x20<link> ether 00:0c:29:e8:86:37 txqueuelen 1000 (Ether

  • CentOS虚拟机克隆后无法上网(网卡信息不一致)问题的解决方法

    一.问题描述 虚拟机克隆后,由于网卡信息不一致的问题,导致不能上网或者执行"sercice network restart"命令失败 [root@lyy 桌面]# ifconfig //查看当前网卡信息 [root@lyy 桌面]# cd /etc/sysconfig/network-scripts //进入网卡配置文件目录 [root@lyy network-scripts]# ls //查看网卡配置文件中的网卡信息 二.原因分析 由于克隆后的系统,系统只是修改了虚拟机的名字和MAC

  • linux: centos设置ip以及连接外网的方法

    注明:我使用的的使centos 7,所有文件名是ifcfg-enp0s3, 一. 设置虚拟机中linux的ip,使本地能连通虚拟机的linux系统 1>.进入本地windows的cmd,输入ipconfig 2>.根据上面的信息,设置虚拟机中的linux的ip必须要与本机ip在同一网段,这样才能在本地使用xshell等连接工具连接登录虚拟机的linux系统 以下是linux中/etc/sysconfig/network-scripts/ifcfg-enp0s3档案的信息(设置如下) TYPE=

  • Centos下查看网卡的实时流量命令

    可以通过iptraf命令查看网卡的实时流量,图像非常直观. 今天在测试服务器上准备看下网络流量 复制代码 代码如下: [root@localhost ~]# iptraf -d eth0 -bash: iptraf: command not found 发现运维同事没有给安装,只能自己手工安装了 首先安装需要的包: 复制代码 代码如下: yum -y install gcc yum -y install glibc yum -y install ncurses 安装完毕之后 我们现在开始安装ip

  • 虚拟机VirtualBox中centos6.5网络设置图文详解

    最近一些日子在学习有关于虚拟机VirtualBox,现在分享给大家参考一下. 一.虚拟机网络配置 默认只是设置了网卡1:方式NAT(对应ifcfg-eth0) 我们还可以设置网卡2,网卡3.可以在系统安装完成后设置. 网卡2设置回环网卡,实现虚拟机与宿主机组成局域网(对应ifcfg-eth1),这样即使没有路由器也可以组成局域网,可以进行ssh连接. 需要宿主机安装MicrosoftLoopbackAdapter.参加附录. 网卡3设置连接到互联网,并与宿主机组成局域网(对应ifcfg-eth2

随机推荐