Linux服務(wù)器的三種配置 IP 方法
本文轉(zhuǎn)載自微信公眾號(hào)「 CoderSong 」,作者 CoderSong。轉(zhuǎn)載本文請(qǐng)聯(lián)系 CoderSong公眾號(hào)。
方法一:使用nmcli命令
說明:使用nmcli命令配置的網(wǎng)絡(luò)配置可以立即生效且系統(tǒng)重啟后配置也不會(huì)丟失。
nmcli介紹
nmcli是NetworkManager的一個(gè)命令行工具,它提供了使用命令行配置由NetworkManager管理網(wǎng)絡(luò)連接的方法。nmcli命令的基本格式為:
nmcli [OPTIONS] OBJECT { COMMAND | help }
其中,OBJECT選項(xiàng)可以是general、networking、radio、connection或device等。在日常使用中,最常使用的是-t, --terse(用于腳本)、-p, --pretty選項(xiàng)(用于用戶)及-h, --help選項(xiàng),用戶可以使用“ nmcli help”獲取更多參數(shù)及使用信息。
$ nmcli help
常用命令使用舉例如下:
- 顯示NetworkManager狀態(tài):$ nmcli general status
- 顯示所有連接:$ nmcli connection show
- 只顯示當(dāng)前活動(dòng)連接,如下所示添加 -a, --active:$ nmcli connection show --active
- 顯示由NetworkManager識(shí)別到的設(shè)備及其狀態(tài):$ nmcli device status
- 使用nmcli工具啟動(dòng)和停止網(wǎng)絡(luò)接口,在root權(quán)限下執(zhí)行如下命令:# nmcli connection up id enp3s0 # nmcli device disconnect enp3s0
設(shè)備管理
連接到設(shè)備
使用如下命令,NetworkManager將連接到對(duì)應(yīng)網(wǎng)絡(luò)設(shè)備,嘗試找到合適的連接配置,并激活配置。
# nmcli device connect "$IFNAME"
說明:
如果不存在相應(yīng)的配置連接,NetworkManager將創(chuàng)建并激活具有默認(rèn)設(shè)置的新配置文件。
斷開設(shè)備連接
使用如下命令,NetworkManager將斷開設(shè)備連接,并防止設(shè)備自動(dòng)激活。
# nmcli device disconnect "$IFNAME"
設(shè)置網(wǎng)絡(luò)連接
列出目前可用的網(wǎng)絡(luò)連接:nmcli con show
$ nmcli con show
NAME UUID TYPE DEVICE
有線連接 1 ffce71f8-6121-3024-84b5-192f50f90d25 ethernet ens160說明:輸出結(jié)果中的NAME字段代表連接ID(名稱)。
添加一個(gè)網(wǎng)絡(luò)連接會(huì)生成相應(yīng)的配置文件,并與相應(yīng)的設(shè)備關(guān)聯(lián)。檢查可用的設(shè)備,方法如下:
nmcli dev status
$ nmcli dev status
DEVICE TYPE STATE CONNECTION
ens160 ethernet 已連接 有線連接 1
lo loopback 未托管 --配置靜態(tài)IP連接
配置IP
添加靜態(tài) IPv4 配置的網(wǎng)絡(luò)連接,可使用以下命令:
nmcli connection add type ethernet con-name connection-name ifname interface-name ip4 address gw4 address
示例:
$ nmcli connection add type ethernet con-name eth1_con ifname eth1 ip4 192.168.10.25/24 gw4 192.168.10.1說明:如果要添加 IPv6 地址和網(wǎng)關(guān)信息,使用 ip6 和 gw6 選項(xiàng)。
方法二:使用ip命令
說明:使用ip命令配置的網(wǎng)絡(luò)配置可以立即生效但系統(tǒng)重啟后配置會(huì)丟失。
配置IP地址
使用ip命令為接口配置地址,命令格式如下,其中 interface-name
ip addr [ add | del ] address dev interface-name配置靜態(tài)地址
在root權(quán)限下,配置靜態(tài)IP地址,使用示例如下:
$ ip address add 192.168.0.10/24 dev enp3s0在root權(quán)限下,查看配置的網(wǎng)口:
$ ip addr show dev enp3s0配置多個(gè)地址
ip 命令支持為同一接口分配多個(gè)地址,可在root權(quán)限下重復(fù)多次使用 ip 命令實(shí)現(xiàn)分配多個(gè)地址。使用示例如下:
$ ip address add 192.168.2.223/24 dev enp4s0
$ ip address add 192.168.4.223/24 dev enp4s0
$ ip addr
3: enp4s0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc fq_codel state UP group default qlen 1000
link/ether 52:54:00:aa:da:e2 brd ff:ff:ff:ff:ff:ff
inet 192.168.203.12/16 brd 192.168.255.255 scope global dynamic noprefixroute enp4s0
valid_lft 8389sec preferred_lft 8389sec
inet 192.168.2.223/24 scope global enp4s0
valid_lft forever preferred_lft forever
inet 192.168.4.223/24 scope global enp4s0
valid_lft forever preferred_lft forever
inet6 fe80::1eef:5e24:4b67:f07f/64 scope link noprefixroute
valid_lft forever preferred_lft forever配置靜態(tài)路由
如果需要靜態(tài)路由,可使用 ip route add 命令在路由表中添加,使用 ip route del 命令刪除。最常使用的 ip route 命令格式如下:
$ ip route [ add | del | change | append | replace ] destination-address查看路由表:
$ ip route在主機(jī)地址中添加一個(gè)靜態(tài)路由,在 root 權(quán)限下,使用以下命令格式:
$ ip route add 192.168.2.1 via 10.0.0.1 [dev interface-name]
# 192.168.2.1是目的主機(jī)的ip,10.0.0.1是默認(rèn)網(wǎng)關(guān),dev ethXX是出去的網(wǎng)口添加到某個(gè)網(wǎng)段的靜態(tài)路由:
$ ip route add 192.168.2.0/24 via 10.0.0.1 [dev interface-name]
#表示到達(dá)192.168.2.0-192.168.2.255網(wǎng)段的路由添加默認(rèn)的網(wǎng)關(guān)路由:
$ ip route add default via XX.XX.XX.XX ethX方法三:通過ifcfg文件配置網(wǎng)絡(luò)
說明:通過ifcfg文件配置的網(wǎng)絡(luò)配置不會(huì)立即生效,需要在root權(quán)限下執(zhí)行ifup interface-name命令以激活網(wǎng)絡(luò)配置后才生效(interface-name處填寫具體的網(wǎng)絡(luò)接口名)。
配置靜態(tài)網(wǎng)絡(luò)
以enp4s0網(wǎng)絡(luò)接口進(jìn)行靜態(tài)網(wǎng)絡(luò)設(shè)置為例,通過在root權(quán)限下修改ifcfg文件實(shí)現(xiàn),在/etc/sysconfig/network-scripts/目錄中生成名為ifcfg-enp4s0的文件中,修改參數(shù)配置,示例如下:
TYPE=Ethernet
PROXY_METHOD=none
BROWSER_ONLY=no
BOOTPROTO=none
IPADDR=192.168.0.10
GATEWAY=192.168.0.1
PREFIX=24
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=enp4s0static
UUID=08c3a30e-c5e2-4d7b-831f-26c3cdc29293
DEVICE=enp4s0
ONBOOT=yes注意配置靜態(tài)IP時(shí) ,要設(shè)置BOOTPROTO=none
原文鏈接:https://mp.weixin.qq.com/s/1uETGf9nrN6bC627NQ0yOg






















