文件位置:/proc/sys/net/ipv4/conf   查看适配器(网卡)名称

网卡目录:  /etc/sysconfig/network-scripts

一. centos7

即Linux下配置网卡ip别名何谓ip别名?

用windows的话说,就是为一个网卡配置多个ip。

什么场合增加ip别名能派上用场?

布网需要、多ip访问测试、特定软件对多ip的需要…and so on.

方法1

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

1. 首先为服务器网卡配置静态ip地址

    #ifconfig eth0 192.168.6.99 netmask 255.255.255.0 up

eth0 //机器的第一个网卡,有些机器有多个网卡,eth1、eth2…

192.168.6.99 //设置网卡的静态ip地址

netmask 255.255.255.0 //ip地址的子网掩码,无需多解释

up //表示立即激活该网卡

2. 设置网卡的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

GEGEWU配置:

   ifconfig ens33:0 10.0.0.14 netmask 255.255.255.0 up    ifconfig ens33:1 10.0.0.15 netmask 255.255.255.0 up

测试 是否成功 windows -cmd ping

   ping 10.0.0.14

   ping 10.0.0.15

C:\Users\86159>ping  10.0.0.14 正在 Ping 10.0.0.14 具有 32 字节的数据: 来自 10.0.0.14 的回复: 字节=32 时间<1ms TTL=64 来自 10.0.0.14 的回复: 字节=32 时间<1ms TTL=64 来自 10.0.0.14 的回复: 字节=32 时间<1ms TTL=64 10.0.0.14 的 Ping 统计信息:     数据包: 已发送 = 3,已接收 = 3,丢失 = 0 (0% 丢失), 10.0.0.15 的 Ping 统计信息:     数据包: 已发送 = 2,已接收 = 2,丢失 = 0 (0% 丢失),

成功!


注:此种配置重启服务器之后会丢失状态(失效)

 需要写入开机自启动

方法1 配置写入开机自启动

1. 写入:/etc/rc.local (指定脚本路径)
   chmod +x /etc/rc.d/rc.local
 
#!/bin/bash
# THIS FILE IS ADDED FOR COMPATIBILITY PURPOSES
#
# It is highly advisable to create own systemd services or udev rules
# to run scripts during boot instead of using this file.
#
# In contrast to previous versions due to parallel execution during boot
# this script will NOT be run after all other services.
#
# Please note that you must run 'chmod +x /etc/rc.d/rc.local' to ensure
# that this script will be executed during boot.

touch /var/lock/subsys/local

ifconfig ens33:0 10.0.0.14 netmask 255.255.255.0 up
ifconfig ens33:1 10.0.0.15 netmask 255.255.255.0 up

[root@12 ~]# cat /home/gegewu/1.txt 
开机自启动测试成功

重启测试-------------->

-------------------> 成功

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

 参考:

文件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

GEGEWU配置:

方法2

文件位置:/etc/sysconfig/network-scripts
[root@12 network-scripts]# cp ifcfg-ens33  ifcfg-ens33:0
[root@12 network-scripts]# ls
ifcfg-ens33    ifdown-bnep  ifdown-isdn    ifdown-sit       ifup          ifup-ippp  
ifcfg-ens33:0  ifdown-eth   ifdown-post    ifdown-Team      ifup-aliases  ifup-ipv6 

sudo tee /etc/sysconfig/network-scripts/ifcfg-ens33:0 <<-'EOF'
cat > /etc/sysconfig/network-scripts/ifcfg-ens33:0 <<EOF
TYPE="Ethernet"
PROXY_METHOD="none"
BROWSER_ONLY="no"
BOOTPROTO="static"
DEFROUTE="yes"
IPV4_FAILURE_FATAL="no"
IPV6INIT="yes"
IPV6_AUTOCONF="yes"
IPV6_DEFROUTE="yes"
IPV6_FAILURE_FATAL="no"
IPV6_ADDR_GEN_MODE="stable-privacy"
NAME="ens33:1"  #n
#UUID="a74b84-1967-424c-bf12-4ec359034713" #可以不要或者改变
DEVICE="ens33:1"  # : 后面必须大于0
ONBOOT="yes"
IPADDR="10.0.0.14"
#GATEWAY="10.0.0.220"  #子接口不能要网关  
NETMASK="255.255.255.0" #或者:PREFIX="24"
#DNS1="114.114.114.114"
EOF 

验证: 
10.0.0.14 的 Ping 统计信息:
    数据包: 已发送 = 3,已接收 = 3,丢失 = 0 (0% 丢失),
10.0.0.15 的 Ping 统计信息:
    数据包: 已发送 = 2,已接收 = 2,丢失 = 0 (0% 丢失),

---- 成功!

如配置ens38的子接口:cp ifcfg-ens38: ifcfg-ens38:0

centos7usb网卡 centos7网卡up_#if

 验证:

centos7usb网卡 centos7网卡up_#if_02

成功! 

方法3

在原配置文件下直接编辑加入新IP

TYPE="Ethernet"
PROXY_METHOD="none"
BROWSER_ONLY="no"
BOOTPROTO="static"
DEFROUTE="yes"
IPV4_FAILURE_FATAL="no"
IPV6INIT="yes"
IPV6_AUTOCONF="yes"
IPV6_DEFROUTE="yes"
IPV6_FAILURE_FATAL="no"
IPV6_ADDR_GEN_MODE="stable-privacy"
NAME="ens33"
UUID="a74b8b44-1967-424c-bf12-4ec359034713"
DEVICE="ens33"
ONBOOT="yes"
IPADDR="10.0.0.12"
IPADDR1="10.0.0.18" 
IPADDR2="10.0.0.19" 
GATEWAY="10.0.0.220"
NETMASK="255.255.255.0"
DNS1="114.114.114.114"  
~

centos7usb网卡 centos7网卡up_IPV6_03

 成功!

参考:

^v24^huaweicloudv2,157^v15^new_3&utm_term=%E6%9C%8D%E5%8A%A1%E5%99%A8%E9%85%8D%E7%BD%AE%E5%8D%95%E7%BD%91%E5%8D%A1%E5%8D%95ip&spm=1018.2226.3001.4187

二 . ubtun20.04/18.04 配置单网卡多IP

文件位置:/etc/netplan

直接编辑配置文件: vim 00-installer-config.yaml

centos7usb网卡 centos7网卡up_centos7usb网卡_04

 重启网卡:

sudo netplan apply

验证:

root@gegewu1:/etc/netplan# ping 10.0.0.16
PING 10.0.0.16 (10.0.0.16) 56(84) bytes of data.
64 bytes from 10.0.0.16: icmp_seq=1 ttl=64 time=0.154 ms
64 bytes from 10.0.0.16: icmp_seq=2 ttl=64 time=0.038 ms
^C
--- 10.0.0.16 ping statistics ---
2 packets transmitted, 2 received, 0% packet loss, time 1020ms
rtt min/avg/max/mdev = 0.038/0.096/0.154/0.058 ms
root@gegewu1:/etc/netplan# ls

centos7usb网卡 centos7网卡up_centos7usb网卡_05

成功!

注:unbtun看不到网卡名称但实际存在