不管是单独的Linux,还是虚拟机上的Linux,默认都是使用DHCP动态分配ip:
机器启动时,DHCP从指定的ip地址范围内,分配一个ip。每次启动分配的ip可能不同。
tomcat、nginx、mysql、redis等服务器的ip会变化,这肯定不行,服务器的ip地址要是固定的:
- 在nginx的负载均衡器中写死了tomcat节点的ip
- 在项目的配置文件中写死了nginx、mysql、redis服务器的ip
服务器ip会变化肯定不行,需要修改为静态ip。
配置静态IP
在安装Linux时可以配置ip,如果安装时没有配置,后面可以如下进行配置
(1)先切换到网络管理的目录
cd /etc/sysconfig/network-scripts
看一下网络配置的文件:
ls -l
看一下配置文件的文件名,这个文件名和网卡型号相关,-后面是网卡型号,每个人的可能不一样,所以要先cd到指定目录,ls看一下文件名。
还要注意一下当前登录的账户有没有此文件的写权限,没有的话切换有w权限的用户,或者chmod修改下文件权限。
(2)编辑该文件
vim ifcfg-ens160
BOOTPROTO默认是dhcp,改为static,使用静态ip。在最后面配置ip、子网掩码、网关、dns服务器即可。
前面那些值引不引都可以,后面那几个ip地址一定不要打引号。dns服务器可以配置2个:DNS1、DNS2,1是首选,2是备胎。
(3)重启网卡生效
CentOS 8之前的版本,下面2条指令任一条都可以,都是重启network服务:
service network restart
systemctl restart network.service
CentOS 8弃用了network.service,使用NetworkManager代替,使用上面2个指令会报错:Failed to restart network.service: Unit network.service not found.
要使用NetworkManager的命令:
nmcli c reload
nm即NetworkManager,cli即client。
此种方式只是重新加载网卡配置,并非重启网卡,若ifconfig看到ip还没改(没生效),可使用下面的方式重启网卡。
下面2种方式直接操作硬件,通用的,哪个版本都可以用:
ifconfig ens160 down #卸载ens160网卡
ifconfig ens160 up #启用ens160网卡
ifdown ens160 #卸载ens160网卡
ifup ens160 #启用ens160网卡
网卡型号要换为自己的。
当然,最简单粗暴的方法是重启Linux。
如何查看网卡型号?
1、刚才我们编辑的那个文件ifcfg-ens160,-后面就是网卡型号
2、ifconfig
如果是在VMware中使用Linux,并且使用的是桥接网络,还需要进行一些设置:
默认只开启了仅主机、NAT,点击“更改设置”,把桥接加进去。
使用动态ip不需要在这里面添加,使用静态ip才需要添加。
选择VMnet0
如果机器(主要是笔记本)一会儿连公司的网、一会连家里的网、一会儿连学校的网,一会儿连自己的手机热点,一会儿连这个网,一会儿连那个网,
连接的网络变了,需要重新配置上面那些地址,否则连不上网。
静态ip适合一直使用某个网络的情况,比如服务器,一直使用机房的网。