Help us understand the problem. What is going on with this article?

NetworkManagerでネットワーク設定をする

More than 1 year has passed since last update.

NetworkManagerとは

RHEL7のデフォルトのネットワークサービスです。
コマンドだけでネットワークの設定があれこれ簡単にできます。便利!
(RHEL6までのifcfgタイプのネットワーク設定も使えます。

これだけ知っていれば!という
ネットワークマネージャの基本操作をメモしていきます。

インターフェースの表示

今見えてるインターフェースを表示します。

  • nmcli connection show
# nmcli connection show
名前         UUID                                  タイプ          デバイス
eno16777736  81b891c1-ce55-4cb6-802c-d7d98b637d0f  802-3-ethernet  eno16777736

インターフェースの追加

最低限以下の項目を指定すれば追加されます。
正常に追加されるとその旨の文言が表示されます。

  • nmcli connection add ifname [インターフェース名] type [インタフェースのタイプ]
追加
# nmcli connection add ifname eno33554992 type ethernet
接続 'ethernet-eno33554992' (a476ad21-8d8a-4519-8b2c-1650bf0df463)  正常に追加されました。

少しだけ上記の項目を説明すると…
add
新しくインターフェースを追加するときはaddを使います。

ifname
追加するインターフェース名の指定。
物理にしても仮想マシンにしても自動で生成されているもの
タブ補完で候補が表示されます。

type
インターフェースのタイプを指定します。
ethernetのほかにもbonding、teamingなどが指定できます。

表示コマンドで確認します。

確認
# nmcli connection show
名前                  UUID                                  タイプ          デバイス
ethernet-eno33554992  a476ad21-8d8a-4519-8b2c-1650bf0df463  802-3-ethernet  eno33554992
eno16777736           81b891c1-ce55-4cb6-802c-d7d98b637d0f  802-3-ethernet  eno16777736

インターフェースの起動・停止

nmcliコマンドであればインターフェースごとに起動・停止ができます。
ネットワークサービスごと再起動などしなくてもよいので気が楽ですね。

起動

  • nmcli connection up [インターフェース名]
起動
# nmcli connection up ethernet-eno33554992
接続が正常にアクティベートされました (D-Bus アクティブパス: /org/freedesktop/NetworkManager/ActiveConnection/3)

停止

  • nmcli connection down [インターフェース名]
停止
# nmcli connection down ethernet-eno33554992
Connection 'ethernet-eno33554992' successfully deactivated (D-Bus active path: /org/freedesktop/NetworkManager/ActiveConnection/3)

インターフェースの詳細設定

インターフェースのその他の設定についても少しだけ。

自動起動の有効化

  • nmcli connection modify [インターフェース名] connection.autoconnect yes
自動起動の有効化
# nmcli connection modify ethernet-eno33554992 connection.autoconnect yes 

modify
既存のインターフェースの設定を変更するときに使います。

connection.autoconnect
自動起動設定の指定をします。
デフォルトは無効化されています。
yesで有効化
noで無効化

固定IPアドレスの設定

  • nmcli connection modify [インターフェース名] ipv4.method manual ipv4.addresses [IPアドレス/プレフィックス] ipv4.gateway [ゲートウェイ]
固定IPアドレスの設定
# nmcli connection modify ethernet-eno33554992 ipv4.method manual ipv4.addresses 192.168.2.130/24 ipv4.gateway 192.168.2.254

ipv4.method
固定IPアドレスを割り当てるときはmethodをmanualにします。
デフォルトはautoです。

ipv4.addresses
固定IPアドレスを指定します。
サブネットマスクも同時に設定します。

ipv4.gateway
ゲートウェイを指定します。

ちなみに、
IPv6も同様の形で指定できます。
無効化することもできます。

補足

今回は設定ごとにコマンドを小分けにして記載しましたが、色んな設定を盛り盛りにして1行のコマンドでいろんな設定をすることもできます。
また、上記コマンドたちは省略もできますし、タブ補完がかなり効きます。
設定項目の指定に自信がないときはタブキーを連打しましょう。

例えば、表示コマンドなら下記でも十分です。
- nmcli c s

省略版
# nmcli c s
名前                  UUID                                  タイプ          デバイス
ethernet-eno33554992  a476ad21-8d8a-4519-8b2c-1650bf0df463  802-3-ethernet  eno33554992

参考サイト

nmcliを触り始めの時にかなりお世話になりました。
わかりやすい!

NetworkManager CLI (nmcli) でネットワークを設定する方法

おわりに

nmcliコマンドを使えば
もっと詳しいインターフェースの情報表示や
デバイス名の指定・変更、
bondingとかのちょっと入り組んだネットワーク設定も
もにょもにょと簡単にできます。
また今度気が向いたらまとめられるといいです。

Why do not you register as a user and use Qiita more conveniently?
  1. We will deliver articles that match you
    By following users and tags, you can catch up information on technical fields that you are interested in as a whole
  2. you can read useful information later efficiently
    By "stocking" the articles you like, you can search right away
Comments
Sign up for free and join this conversation.
If you already have a Qiita account
Why do not you register as a user and use Qiita more conveniently?
You need to log in to use this function. Qiita can be used more conveniently after logging in.
You seem to be reading articles frequently this month. Qiita can be used more conveniently after logging in.
  1. We will deliver articles that match you
    By following users and tags, you can catch up information on technical fields that you are interested in as a whole
  2. you can read useful information later efficiently
    By "stocking" the articles you like, you can search right away