不管是單獨的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適合一直使用某個網絡的情況,比如服務器,一直使用機房的網。