【nmcli】コマンド一覧 ~設定反映方法やステータス確認、デバイス名変更~

スポンサーリンク
スポンサーリンク

CentOS7 以上では Network Manager を積極的に使ったほうが良さそう

CentOS7系では Network Manager を使うことが推奨されています(Network Managerを使わないと firewalld のzone設定等がうまく反映されなかったりするよう)。

なのでネットワーク周りのCLIコマンドは nmcli を使いましょう。

NetworkManagerが認識しているインタフェースおよびステータスを表示

[root@localhost ~]# nmcli device
デバイス タイプ 状態 接続
ens33 ethernet 接続済み ens33
ens38 ethernet 接続済み 有線接続2
ens37 ethernet 切断済み —
lo loopback 管理無し —
[root@localhost ~]#
[root@localhost ~]#

有効なものを緑で表示し、利用できないものを赤で表示します。

NetworkManager管理下のインタフェースを表示(有効に利用できるものを緑で表示)

[root@localhost ~]# nmcli connection show
名前 UUID タイプ デバイス
ens33 99fbd3ed-f1d8-4c81-a2cf-9665fd6cd2f9 802-3-ethernet ens33
有線接続2 ebe5b183-c4b0-3d40-b1f6-fe4623a5085f 802-3-ethernet ens38
有線接続1 3508a332-4320-3fdf-bb7a-25539a2a6a14 802-3-ethernet —
[root@localhost ~]#

スポンサーリンク

IPアドレスの設定

nmcli connection modify “有線接続2” ipv4.method manual ipv4.addresses “10.1.1.2/24”
nmcli connection up “有線接続2”

設定反映に2行目の “nmcli connection up”コマンドが必要です。downは実行しなくてもOK。

デフォルトゲートウェイの設定

nmcli connection modify “有線接続2” ipv4.gateway “10.1.1.254”
nmcli connection up “有線接続2”

同様にupコマンドで設定反映。

DNSサーバの設定

nmcli connection modify “有線接続2” ipv4.dns “8.8.8.8”
nmcli connection up “有線接続2”

同様にupコマンドで設定反映。

このコマンドは設定を上書きするため、2台目(セカンダリ等)を設定するには次のコマンドを実行します。

DNSサーバの設定追加・削除

追加するときは +ipv4

nmcli connection modify “有線接続2” +ipv4.dns “8.8.4.4”
nmcli connection up “有線接続2”

削除するときは -ipv4

nmcli connection modify “有線接続2” -ipv4.dns “8.8.4.4”
nmcli connection up “有線接続2”

スポンサーリンク

セカンダリIPアドレスの追加

同様にIPアドレスもセカンダリIPを追加するときは +ipv4

nmcli connection modify “有線接続2” +ipv4.method manual ipv4
.addresses “10.1.1.3/24”
nmcli connection up “有線接続2”

IPを削除するときは -ipv4

nmcli connection modify “有線接続2” +ipv4.method manual ipv4
.addresses “10.1.1.3/24”
nmcli connection up “有線接続2”

プロファイル名(名前/NAME)を変える

[root@localhost ~]# nmcli connection show
名前 UUID タイプ デバイス
ens33 99fbd3ed-f1d8-4c81-a2cf-9665fd6cd2f9 802-3-ethernet ens33
有線接続2 ebe5b183-c4b0-3d40-b1f6-fe4623a5085f 802-3-ethernet ens38
有線接続1 3508a332-4320-3fdf-bb7a-25539a2a6a14 802-3-ethernet —
[root@localhost ~]#

上記の状態で、”有線接続2” を変更するには以下のコマンドを打ちます。

[root@localhost ~]# nmcli connection modify ens38 connection.id ens38

すると即時反映で以下のように変わります。

[root@localhost ~]# nmcli connection show
名前 UUID タイプ デバイス
ens33 99fbd3ed-f1d8-4c81-a2cf-9665fd6cd2f9 802-3-ethernet ens33
ens38 ebe5b183-c4b0-3d40-b1f6-fe4623a5085f 802-3-ethernet ens38
有線接続1 3508a332-4320-3fdf-bb7a-25539a2a6a14 802-3-ethernet —
[root@localhost ~]#

スポンサーリンク

デバイス名を変更する

デバイス名を変更するには以下のようにします。

nmcli connection modify ens38 connection.interface-name eth0
shutdown -r now

名前の変更とは違い、再起動が必要となります。再起動後は以下のように変わります。

[root@localhost ~]# nmcli connection show
名前 UUID タイプ デバイス
ens33 99fbd3ed-f1d8-4c81-a2cf-9665fd6cd2f9 802-3-ethernet ens33
ens38 ebe5b183-c4b0-3d40-b1f6-fe4623a5085f 802-3-ethernet eth0
有線接続 1 3508a332-4320-3fdf-bb7a-25539a2a6a14 802-3-ethernet ens37
[root@localhost ~]#

対話的に設定する場合

[root@localhost ~]# nmcli con edit id ens38
===| nmcli インテラクティブ接続エディター |===既存の ‘802-3-ethernet’ 接続を編集中: ‘ens38’使用できるコマンドを表示するには ‘help’ または ‘?’ を入力します。
プロパティ詳細を表示するには ‘describe [.]’ を入力します。次の設定を変更することができます: connection, 802-3-ethernet (ethernet), 802-1x, dcb, ipv4, ipv6, proxy
nmcli> ?
——————————————————————————
—[ メインメニュー ]—
goto [ | ] :: 設定またはプロパティーに移動する
remove [.] | :: 設定を削除する、またはプロパティー値をリセットする
set [. ] :: プロパティー値を設定する
describe [.] :: プロパティーの説明を表示する
print [all | [.]] :: 接続を出力する
verify [all | fix] :: 接続を検証する
save [persistent|temporary] :: 接続を保存する
activate [] [/|] :: 接続をアクティベートする
back :: ひとつ上のレベルに移動する (戻る)
help/? [] :: このヘルプを表示する
nmcli :: nmcli 設定
quit :: nmcli を終了する
——————————————————————————
nmcli> goto ?
エラー: 無効な設定名; ‘?’ は [connection, 802-3-ethernet (ethernet), 802-1x, dcb, ipv4, ipv6, proxy] にはありません
nmcli> goto connection
変更できるのは次のプロパティになります: id, uuid, interface-name, type, permissions, autoconnect, autoconnect-priority, autoconnect-retries, timestamp, read-only, zone, master, slave-type, autoconnect-slaves, secondaries, gateway-ping-timeout, metered, lldp, stable-id
nmcli connection> goto id
nmcli connection.id> ?
——————————————————————————
—[ プロパティメニュー]—
set [] :: 新しい値の設定
add [] :: プロパティに新規オプションを追加
change :: 現在の値を変更
remove [ |] :: 値の削除
describe :: プロパティの詳細表示
print [setting | connection] :: プロパティ値 (設定/接続) の表示
back :: 上のレベルに移動
help/? [] :: このヘルプまたはコマンドの詳細を表示
quit :: nmcli の終了
——————————————————————————
nmcli connection.id> print
id: ens38
nmcli connection.id> set eth1
nmcli connection.id> back
nmcli connection> save
接続 ‘eth1’ (ebe5b183-c4b0-3d40-b1f6-fe4623a5085f) が正常に更新されました。
nmcli connection> quit
[root@localhost ~]#
スポンサーリンク
スポンサーリンク
スポンサーリンク

シェアする

  • このエントリーをはてなブックマークに追加

フォローする

スポンサーリンク
スポンサーリンク