虽然我们可以使用 ifconfig 指定网卡绑定的ip 及子网掩码,并且使用route指令添加路由,可以将命令写道启动脚本中随系统一起启动,但是吧,这就是放着别人已经造好的轮子不用自己造轮子。
正确使用已有轮子的做法是:
vim /etc/sysconfig/network-scripts/ifcfg-ens18
这里 ens18 是网卡的名字,要换成实际的网卡名,可能是eth0,eth1…这个路径就是系统装好后自动生成的一些配置文件,由构成系统的服务程序读取生效。
但是这个配置文件中的配置项也许在你看到的时候他是不全的,没有的项要自己添加上去。当然我这里的这个也许也是不全的,但是好在够用。关键项我加黑了
TYPE=Ethernet
PROXY_METHOD=none
BROWSER_ONLY=no
DEFROUTE=yes
IPV4_FAILURE_FATAL=no
IPV6INIT=no
IPV6_DEFROUTE=yes
IPV6_FAILURE_FATAL=no
NAME=ens18
UUID=78acdc58-a49e-44df-b7f3-137a299c2182
DEVICE=ens18
ONBOOT=yes
IPADDR=192.168.2.240
PREFIX=24
GATEWAY=192.168.2.1
DNS1=114.114.114.114
DNS2=8.8.8.8
BOOTPROTO=none
IPADDR 就是配置网卡地址,PREFIX 就是子网掩码的CIDR书写形式
GATEWAY 就是配置他的网关
现在需要一种不用重启系统就让配置生效的办法:
方法1,就是手动执行配置指令临时生效,等待重启从配置文件生效
ip addr add 192.168.2.240/24 dev ens18
ip route add default via 192.168.2.1 dev ens18
方法2,重启网络服务
systemctl restart network
方法3,使用ifdown和ifup命令
这是最直接的办法,可以先关闭再启动指定的网络接口
ifdown ens18 && sudo ifup ens18