文章目录
iproute工具 通用 ip 命令配置法(适用范围:全部、及时生效,不写配置文件)
## 配置ipv4、配置默认路由
ip addr add 192.168.1.88/24 dev ens18
ip route add default via 192.168.1.1 dev ens18
# 删除默认路由
# ip route del default via 192.168.1.1
## 配置ipv6、配置默认路由
ip -6 addr add 2409:8a62:b513:510:be24:11ff:fe36:159b/64 dev ens18
ip -6 route add default via fe80::1 dev ens18
# 删除默认路由
# ip -6 route del default via fe80::1
## ip命令如何创建vlan属性网卡
# ip命令创建vlan接口网卡(重启失效)
# 创建一个名为vlan11-if,父接口是ens20,vlan id为 11 的网卡
ip link add link ens20 name vlan11-if type vlan id 11
ip addr add 192.168.10.10/24 dev vlan11-if
ip link set vlan11-if up
# 关闭、并删除接口
ip link set vlan11-if down
ip link delete vlan11-if
centos6系列(不推荐)
# 配置IP 和网关
ifconfig eth0 192.168.1.100 netmask 255.255.255.0
route add default gw 192.168.1.1
route -n
NetworkManager 工具 通过 nmcli 命令配置法(会生成对应文件,推荐)
## 查看相关指令(使用前提,NetworkManager服务必须正常运行)
#列出当前可用的网络连接
nmcli con show
# 查看可用设备
nmcli device status
# 查看网卡信息
nmcli device show eth0
## 为eth0 开启自动配置
nmcli connection modify eth0 ipv4.method auto
# nmcli connection modify eth0 ipv4.method dhcp #或者这样(这种写法好像有错,没有dhcp这个选项)
# nmcli connection modify eth0 ipv4.method disabled #禁用ipv4
#nmcli con mod eth0 ipv6.method auto # 启用自动配置(例如通过 SLAAC)
#nmcli con mod eth0 ipv6.method dhcp # 启用 DHCPv6
## 为eth0 配置ipv4
nmcli connection modify eth0 ipv4.addresses 192.168.60.160/24 ipv4.gateway 192.168.60.254 ipv4.dns 8.8.8.8,8.8.4.4
nmcli connection modify eth0 ipv4.method manual
#nmcli connection modify eth0 ipv4.gateway 192.168.60.254
#nmcli connection modify eth0 ipv4.dns 8.8.8.8,8.8.4.4
#一次性配置多个ip
#nmcli connection modify eth0 ipv4.addresses "192.168.60.160/24,192.168.60.161/24,192.168.60.163/24"
# 或者 增加一个ip(注意:使用+号,增加ipv6也一样)
#nmcli con mod eth0 +ipv4.addresses 192.168.60.164/24
# 或者 减少一个ip(注意:使用-号,增加ipv6也一样)
#nmcli con mod eth0 -ipv4.addresses 192.168.60.164/24
## 为eth0 配置ipv6
nmcli connection modify eth0 ipv6.addresses 2408:8262:2482:4c7c:bc06:2d4a:e04c:87b7/64
nmcli connection modify eth0 ipv6.gateway fe80::be24:11ff:fedc:5e66
nmcli connection modify eth0 ipv6.dns 2001:4860:4860::8888,2001:4860:4860::8844
nmcli connection modify eth0 ipv6.method manual
## 重载并启动网卡
#重读配置文件(当你用vi编辑文件后,NetworkManager不会知道,reload后重读文件)
nmcli connection reload
# 或者只重载 某一个文件
# nmcli con load /etc/sysconfig/network-scripts/ifcfg-eth0
# 使用 nmcli 等工具所做的更改不需要重新加载,但需要关闭关联的接口,然后再次启动
nmcli dev disconnect eth0 ; nmcli con up eth0
## 使用该方式配置后,你可以去查看网卡文件,学习人家的写法
cat /etc/sysconfig/network-scripts/ifcfg-eth0
## 如何禁用ipv6
nmcli con mod ens18 ipv6.method disabled
nmcli con down ens18 ; nmcli con up ens18
rhel7系列配置文件(单ipv4、单ipv6 > 扩展到 多ipv4、多ipv6)
# 单ipv4、单ipv6配置
[root@localhost ~]# cat /etc/sysconfig/network-scripts/ifcfg-eth0
TYPE="Ethernet"
PROXY_METHOD="none"
BROWSER_ONLY="no"
BOOTPROTO="static"
DEFROUTE="yes"
NAME="eth0"
DEVICE="eth0"
ONBOOT="yes"
IPV4_FAILURE_FATAL="no"
IPADDR="192.168.61.2"
PREFIX="28"
GATEWAY="192.168.61.1"
#IPADDR1="192.168.61.3" # 多个ipv4就多一组这个,注意数字
#PREFIX1="28"
DNS1="223.5.5.5"
# ipv6配置
IPV6_PRIVACY="no"
IPV6INIT="yes"
IPV6_AUTOCONF="yes"
IPV6_DEFROUTE="yes"
IPV6_FAILURE_FATAL="no"
IPV6_ADDR_GEN_MODE="stable-privacy"
IPV6ADDR=2409:8C02:21C:A0:3::164/81
#IPV6ADDR_SECONDARIES=2409:8c02:21c:a0:3::165/81 # 配置第二个ipv6就这么写
#IPV6ADDR_SECONDARIES="2409:8c02:21c:a0:3::165/81 2409:8c02:21c:a0:3::166/81" # 若是多两个ipv6,就用这样的格式,多三个 在双引号内 加空格 加ipv6即可。
IPV6_DEFAULTGW=2409:8C02:21C:A0:3::1
DNS2=2001:4860:4860::8888 # ipv6dns直接这样写即可,一行一个
## 重启网络服务
systemctl restart network
rhel7系列连续多ip、ip段配置方法
## 大前提:
1、initscripts 支持ip范围配置,
2、NetworkManager 不支持ip范围配置,
# 也就是说按次方法配置ip范围,必须关闭NetworkManager 服务,但lo网口配置ip范围是特例,可不关NetworkManager服务,配置其他网卡时必须关闭NetworkManager ,哪怕是使用 NM_CONTROLLED=no参数不交易其管理都不行。
## 场景一、给lo网卡配置连续ip(该场景,交换机直接指路由 到主网卡,主网卡再把lo网卡ip 路由回去,实现通网)
# 1、先创建一个range网卡文件(有多个连续网段就创建多个文件,如下)
[root@LT network-scripts]# cat ifcfg-lo-range0
IPADDR_START=2.2.2.2
IPADDR_END=2.2.2.10
CLONENUM_START=1 # 表示ip配置网卡的序号开始值为1,即lo:1
PREFIX=24
[root@LT network-scripts]# cat ifcfg-lo-range1
IPADDR_START=2.2.3.2
IPADDR_END=2.2.3.78
CLONENUM_START=1
PREFIX=24
# 2、重启网络服务
systemctl restart network
## 场景二、给eth0 配置多个连续ip(该场景,交换机可以指路由,也可以是二层)
# 1、先必须关闭 NetworkManager 服务
systemctl stop NetworkManager ; systemctl disable NetworkManager
# 2、再创建range网卡文件
cat /etc/sysconfig/network-scripts/ifcfg-eth0-range0
TYPE=Ethernet
#NM_CONTROLLED=no # 若是你不关闭 NetworkManager,即便加上这句也不会成功
IPADDR_START=192.168.60.130
IPADDR_END=192.168.60.140
CLONENUM_START=1
PREFIX=24
# 3、重启网络服务
systemctl restart network
# 若不生效,请使用 journalctl -xe 查看日志信息
## 附、若是想要删除某个范围的IP
ip -s a f to 192.168.1.0/24
ubuntu 2204
network:
ethernets:
eno1:
addresses:
- 2.10.10.100/26
- 2408:8766:600::60/64
- 2.10.10.103/26
- 2408:8766:600::30/64
nameservers:
addresses:
- 119.6.6.6
- 119.7.7.7
search: []
routes:
- to: default
via: 2.10.10.65
- to: ::/0
via: 2408:8766:600::1
eno2:
dhcp4: true
eno3:
dhcp4: true
eno4:
dhcp4: true
version: 2
如果文章对你有帮助,欢迎点击上方按钮打赏作者
暂无评论