詳解Centos8 配置靜態(tài)IP的實(shí)現(xiàn)
安裝centos 8之后,重啟啟動(dòng)網(wǎng)絡(luò)時(shí),會(huì)出現(xiàn)以下報(bào)錯(cuò)
報(bào)錯(cuò)信息如下:
Failed to start network.service: Unit network.service not found.
意思為無(wú)法重啟網(wǎng)絡(luò)服務(wù),原因是無(wú)法找到network.service網(wǎng)絡(luò)服務(wù)。
在rhel8(含centos8)上,在/etc/sysconfig/network-scripts/里也看不到任何腳本文件,沒(méi)有傳統(tǒng)的network.service。因此只能通過(guò)其它方法進(jìn)行網(wǎng)絡(luò)配置,包括NM命令工具集。換言之,在rhel8上,必須開(kāi)啟NM,否則無(wú)法使用網(wǎng)絡(luò)。
手動(dòng)配置靜態(tài)IP
cat /etc/sysconfig/network-scripts/ifcfg-ens32 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=ens32 UUID=066b4926-b40c-4c28-a5b4-2310d2b96613 DEVICE=ens32 ONBOOT=yes IPADDR=192.168.1.200 NETMASK=255.255.255.0 GATEWAY=192.168.1.254 DNS1=223.5.5.5 PREFIX=24
使用nmcli重新回載網(wǎng)絡(luò)配置
nmcli c reload
查看
nmcli c NAME UUID TYPE DEVICE ens32 066b4926-b40c-4c28-a5b4-2310d2b96613 ethernet ens32
補(bǔ)充nmcli命令
nmcli使用方法
nmcli使用方法非常類(lèi)似linux ip命令、cisco交換機(jī)命令,并且支持tab補(bǔ)全(詳見(jiàn)本文最后的Tips),也可在命令最后通過(guò)-h、--help、help查看幫助。
nmcli --help Usage: nmcli [OPTIONS] OBJECT { COMMAND | help } OPTIONS -o[verview] overview mode (hide default values) -t[erse] terse output -p[retty] pretty output -m[ode] tabular|multiline output mode -c[olors] auto|yes|no whether to use colors in output -f[ields] <field1,field2,...>|all|common specify fields to output -g[et-values] <field1,field2,...>|all|common shortcut for -m tabular -t -f -e[scape] yes|no escape columns separators in values -a[sk] ask for missing parameters -s[how-secrets] allow displaying passwords -w[ait] <seconds> set timeout waiting for finishing operations -v[ersion] show program version -h[elp] print this help OBJECT g[eneral] NetworkManager's general status and operations n[etworking] overall networking control r[adio] NetworkManager radio switches c[onnection] NetworkManager's connections d[evice] devices managed by NetworkManager a[gent] NetworkManager secret agent or polkit agent m[onitor] monitor NetworkManager changes
在nmcli中有2個(gè)命令最為常用:
nmcli connection
譯作連接,可理解為配置文件,相當(dāng)于ifcfg-ethX??梢院?jiǎn)寫(xiě)為nmcli c
nmcli device
譯作設(shè)備,可理解為實(shí)際存在的網(wǎng)卡(包括物理網(wǎng)卡和虛擬網(wǎng)卡)。可以簡(jiǎn)寫(xiě)為nmcli d
在NM里,有2個(gè)維度:連接(connection)和設(shè)備(device),這是多對(duì)一的關(guān)系。想給某個(gè)網(wǎng)卡配ip,首先NM要能納管這個(gè)網(wǎng)卡。設(shè)備里存在的網(wǎng)卡(即nmcli d可以看到的),就是NM納管的。接著,可以為一個(gè)設(shè)備配置多個(gè)連接(即nmcli c可以看到的),每個(gè)連接可以理解為一個(gè)ifcfg配置文件。同一時(shí)刻,一個(gè)設(shè)備只能有一個(gè)連接活躍??梢酝ㄟ^(guò)nmcli c up切換連接。
connection有2種狀態(tài):
- 活躍(帶顏色字體):表示當(dāng)前該connection生效
- 非活躍(正常字體):表示當(dāng)前該connection不生效
device有4種常見(jiàn)狀態(tài):
- connected:已被NM納管,并且當(dāng)前有活躍的connection
- disconnected:已被NM納管,但是當(dāng)前沒(méi)有活躍的connection
- unmanaged:未被NM納管
- unavailable:不可用,NM無(wú)法納管,通常出現(xiàn)于網(wǎng)卡link為down的時(shí)候(比如ip link set ens32 down)
nmcli常用命令一覽
# 查看ip(類(lèi)似于ifconfig、ip addr) nmcli # 創(chuàng)建connection,配置靜態(tài)ip(等同于配置ifcfg,其中BOOTPROTO=none,并ifup啟動(dòng)) nmcli c add type ethernet con-name ens32 ifname ens32 ipv4.addr 192.168.1.100/24 ipv4.gateway 192.168.1.1 ipv4.method manual # 創(chuàng)建connection,配置動(dòng)態(tài)ip(等同于配置ifcfg,其中BOOTPROTO=dhcp,并ifup啟動(dòng)) nmcli c add type ethernet con-name ens32 ifname ens32 ipv4.method auto
# 修改ip(非交互式) nmcli c modify ens32 ipv4.addr '192.168.1.200/24' nmcli c up ens32
# 修改ip(交互式) nmcli c edit ens32 nmcli> goto ipv4.addresses nmcli ipv4.addresses> change Edit 'addresses' value: 192.168.1.200/24 Do you also want to set 'ipv4.method' to 'manual'? [yes]: yes nmcli ipv4> save nmcli ipv4> activate nmcli ipv4> quit
# 啟用connection(相當(dāng)于ifup) nmcli c up ens32
# 停止connection(相當(dāng)于ifdown) nmcli c down
# 刪除connection(類(lèi)似于ifdown并刪除ifcfg) nmcli c delete ens32
# 查看connection列表 nmcli c show
# 查看connection詳細(xì)信息 nmcli c show ens32
# 重載所有ifcfg或route到connection(不會(huì)立即生效) nmcli c reload
# 重載指定ifcfg或route到connection(不會(huì)立即生效) nmcli c load /etc/sysconfig/network-scripts/ifcfg-ens32 nmcli c load /etc/sysconfig/network-scripts/route-ens32
# 立即生效connection,有3種方法 nmcli c up ens32 nmcli d reapply ens32 nmcli d connect ens32
# 查看device列表 nmcli d
# 查看所有device詳細(xì)信息 nmcli d show
# 查看指定device的詳細(xì)信息 nmcli d show ens32
# 激活網(wǎng)卡 nmcli d connect ens32
# 關(guān)閉無(wú)線(xiàn)網(wǎng)絡(luò)(NM默認(rèn)啟用無(wú)線(xiàn)網(wǎng)絡(luò)) nmcli r all off
# 查看NM納管狀態(tài) nmcli n
# 開(kāi)啟NM納管 nmcli n on
# 關(guān)閉NM納管(謹(jǐn)慎執(zhí)行) nmcli n off
# 監(jiān)聽(tīng)事件 nmcli m
# 查看NM本身狀態(tài) nmcli
# 檢測(cè)NM是否在線(xiàn)可用 nm-online
提及的ifcfg均指代/etc/sysconfig/network-scripts/ifcfg-ens32及/etc/sysconfig/network-scripts/route-ens32
nmcli connection重點(diǎn)
nmcli c show NAME UUID TYPE DEVICE ens32 066b4926-b40c-4c28-a5b4-2310d2b96613 ethernet ens32
- 第一列是connection名字,簡(jiǎn)稱(chēng)con-name(注意con-name不是網(wǎng)卡名)
- 第二列是connection的UUID
- 最后一列才是網(wǎng)卡名(標(biāo)準(zhǔn)說(shuō)法叫device名),可通過(guò)nmcil d查看device
對(duì)connection做操作時(shí)需要指定標(biāo)識(shí),標(biāo)識(shí)可以是con-name、UUID、如果存在ifcfg文件則也可以用ifcfg的完整路徑,即/etc/sysconfig/network-scripts/ifcfg-ens32
nmcli c show ens32 nmcli c show cae3f1ef-e79a-46c3-8e0c-946b91a65e11 nmcli c show /etc/sysconfig/network-scripts/ifcfg-ens32
nmcli c的con-name
同時(shí)對(duì)應(yīng)ifcfg的文件名以及內(nèi)容中的NAME=,該參數(shù)表示連接(connection)的名字,無(wú)需和網(wǎng)卡名相同,可以為一個(gè)設(shè)備(device)創(chuàng)建多個(gè)連接,但同一時(shí)刻只能有一個(gè)連接生效。當(dāng)有多個(gè)連接時(shí)候,nmcli c delete刪除當(dāng)前連接,就會(huì)自動(dòng)選擇同一個(gè)設(shè)備的其他連接來(lái)頂替生效??梢酝ㄟ^(guò)nmcli c up來(lái)將指定連接切換生效。
注意:通過(guò)nmcli c modify修改con-name,只會(huì)對(duì)應(yīng)修改ifcfg文件中的NAME,而不會(huì)更改ifcfg文件名。
nmcli c的ipv4.method
對(duì)應(yīng)ifcfg文件內(nèi)容的BOOTPROTO,ipv4.method默認(rèn)為auto,對(duì)應(yīng)為BOOTPROTO=dhcp,這種時(shí)候如果指定ip,就可能導(dǎo)致網(wǎng)卡同時(shí)有dhcp分配的ip和靜態(tài)ip。設(shè)置為manual表示BOOTPROTO=none,即只有靜態(tài)ip。
例子:創(chuàng)建一個(gè)連接(connection)
nmcli c add type ethernet con-name ens32-test ifname ens32 ipv4.addresses '192.168.1.100/24,192.168.1.101/32' ipv4.routes '10.0.0.0/8 192.168.1.10,192.168.0.0/16 192.168.1.11' ipv4.gateway 192.168.1.254 ipv4.dns '8.8.8.8,4.4.4.4' ipv4.method manual
- type ethernet:創(chuàng)建連接時(shí)候必須指定類(lèi)型,類(lèi)型有很多,可以通過(guò)nmcli c add type -h看到,這里指定為ethernet。
- con-name ens32 ifname ens32:第一個(gè)ethX表示連接(connection)的名字,這個(gè)名字可以任意定義,無(wú)需和網(wǎng)卡名相同;第二個(gè)ethX表示網(wǎng)卡名,這個(gè)ethX必須是在nmcli d里能看到的。
- ipv4.addresses '192.168.1.100/24,192.168.1.101/32':配置2個(gè)ip地址,分別為192.168.1.100/24和192.168.1.101/32
- ipv4.gateway 192.168.1.254:網(wǎng)關(guān)為192.168.1.254
- ipv4.dns '8.8.8.8,4.4.4.4':dns為8.8.8.8和4.4.4.4
- ipv4.method manual:配置靜態(tài)IP
對(duì)應(yīng)的ifcfg和dns就是
# /etc/sysconfig/network-scripts/ifcfg-ens32-test TYPE=Ethernet PROXY_METHOD=none BROWSER_ONLY=no BOOTPROTO=none IPADDR=192.168.1.100 PREFIX=24 IPADDR1=192.168.1.101 PREFIX1=32 GATEWAY=192.168.1.254 DNS1=8.8.8.8 DNS2=4.4.4.4 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=ens32-test UUID=9a10ad89-437c-4caa-949c-a394a6d28c8d DEVICE=ens32 ONBOOT=yes # /etc/resolv.conf nameserver 8.8.8.8 nameserver 4.4.4.4
此時(shí),通過(guò)nmcli c應(yīng)該可以看到增加了一條連接
注意:如果這是為ethX創(chuàng)建的第一個(gè)連接,則自動(dòng)生效;如果此時(shí)已有連接存在,則該連接不會(huì)自動(dòng)生效,可以執(zhí)行nmcli c up ethX-test來(lái)切換生效
nmcli device重點(diǎn)
nmcli d connect ens32
由NM對(duì)指定網(wǎng)卡進(jìn)行管理,同時(shí)刷新該網(wǎng)卡對(duì)應(yīng)的活躍connection(如果之前有修改過(guò)connection配置);如果有connection但是都處于非活躍狀態(tài),則自動(dòng)選擇一個(gè)connection并將其活躍;如果沒(méi)有connection,則自動(dòng)生成一個(gè)并將其活躍。
nmcli d disconnect ens32
讓NM暫時(shí)不管理指定網(wǎng)卡,此操作不會(huì)變更實(shí)際網(wǎng)卡的link狀態(tài),只會(huì)使對(duì)應(yīng)的connection變成非活躍。若重啟系統(tǒng)則又會(huì)自動(dòng)connect。另外,如果手工將該網(wǎng)卡的connection全部刪掉,該網(wǎng)卡狀態(tài)也會(huì)自動(dòng)變?yōu)閐isconnected。
nmcli d reapply ens32
專(zhuān)門(mén)用于刷新connection,前提是網(wǎng)卡的device處于connected狀態(tài),否則會(huì)報(bào)錯(cuò)。
nmcli d set ens32 autoconnect yes|no managed yes|no
可以設(shè)置是否自動(dòng)連接和是否自動(dòng)管理,但經(jīng)測(cè)試只能用于當(dāng)前開(kāi)機(jī)狀態(tài), 如果這2個(gè)參數(shù)都設(shè)置為no,然后重啟系統(tǒng),又會(huì)自動(dòng)恢復(fù)成connected和managed yes的狀態(tài)。所以該命令用途不大。注意事項(xiàng):如果managed設(shè)置為no,那么nmcli c reload會(huì)讀取配置文件,但是不會(huì)立即生效,接著如果執(zhí)行nmcli c up ethX,就會(huì)立即生效,同時(shí)managed自動(dòng)變?yōu)閥es。
以上就是本文的全部?jī)?nèi)容,希望對(duì)大家的學(xué)習(xí)有所幫助,也希望大家多多支持我們。
上一篇:Apache FlinkCEP 實(shí)現(xiàn)超時(shí)狀態(tài)監(jiān)控的步驟詳解
欄 目:Linux/apache
下一篇:linux讓程序開(kāi)機(jī)自動(dòng)運(yùn)行最簡(jiǎn)單的方法
本文標(biāo)題:詳解Centos8 配置靜態(tài)IP的實(shí)現(xiàn)
本文地址:http://mengdiqiu.com.cn/a1/Linux_apache/10720.html
您可能感興趣的文章
- 04-02linux命令免輸入 linux配置免密登錄
- 01-10Linux中g(shù)rep和egrep命令詳解
- 01-10Linux被中斷的系統(tǒng)如何調(diào)用詳解
- 01-10CentOS8 yum/dnf 配置國(guó)內(nèi)源的方法
- 01-10Windows操作系統(tǒng)下Linux虛擬機(jī)的安裝與配置教程圖解
- 01-10淺析CentOS8虛擬機(jī)訪(fǎng)問(wèn)Windows10主機(jī)文件夾方法
- 01-10Linux中nohup與&的用法和區(qū)別詳解
- 01-10詳解Ubuntu16.04安裝nvidia驅(qū)動(dòng)+CUDA+cuDNN的教程
- 01-10linux安裝php7的方法詳解
- 01-10CentOS7 安裝 zabbix 4.0 教程(圖文詳解)


閱讀排行
- 1C語(yǔ)言 while語(yǔ)句的用法詳解
- 2java 實(shí)現(xiàn)簡(jiǎn)單圣誕樹(shù)的示例代碼(圣誕
- 3利用C語(yǔ)言實(shí)現(xiàn)“百馬百擔(dān)”問(wèn)題方法
- 4C語(yǔ)言中計(jì)算正弦的相關(guān)函數(shù)總結(jié)
- 5c語(yǔ)言計(jì)算三角形面積代碼
- 6什么是 WSH(腳本宿主)的詳細(xì)解釋
- 7C++ 中隨機(jī)函數(shù)random函數(shù)的使用方法
- 8正則表達(dá)式匹配各種特殊字符
- 9C語(yǔ)言十進(jìn)制轉(zhuǎn)二進(jìn)制代碼實(shí)例
- 10C語(yǔ)言查找數(shù)組里數(shù)字重復(fù)次數(shù)的方法
本欄相關(guān)
- 04-02linux關(guān)閉串口命令 關(guān)閉linux端口命令
- 04-02linux文件命令重命名 linux重命名文件名
- 04-02linux中jobs命令 shell jobs命令
- 04-02linux命令注入過(guò)濾 linux 代碼注入
- 04-02linux依次執(zhí)行命令 linux命令的執(zhí)行過(guò)程
- 04-02linux命令注銷(xiāo)vnc linux命令行注銷(xiāo)用戶(hù)
- 04-02linux命令免輸入 linux配置免密登錄
- 04-02軟交換linux命令 軟交換網(wǎng)絡(luò)主要協(xié)議
- 04-02linux命令歷史記錄 linux查看歷史記錄的
- 04-02linux命令頁(yè)面 linux命令頁(yè)面中文
隨機(jī)閱讀
- 01-10delphi制作wav文件的方法
- 01-10C#中split用法實(shí)例總結(jié)
- 01-10使用C語(yǔ)言求解撲克牌的順子及n個(gè)骰子
- 08-05DEDE織夢(mèng)data目錄下的sessions文件夾有什
- 01-11ajax實(shí)現(xiàn)頁(yè)面的局部加載
- 01-11Mac OSX 打開(kāi)原生自帶讀寫(xiě)NTFS功能(圖文
- 08-05織夢(mèng)dedecms什么時(shí)候用欄目交叉功能?
- 04-02jquery與jsp,用jquery
- 01-10SublimeText編譯C開(kāi)發(fā)環(huán)境設(shè)置
- 08-05dedecms(織夢(mèng))副欄目數(shù)量限制代碼修改