設定方法の記憶メモとして記載してます。/etc/sysconfig/network-scripts内のconfigの編集は非推奨のため、nmcliでの設定方法としています。
1.IPアドレスの確認
[umilcl@localhost ~]$ ip a
1: lo: <LOOPBACK,UP,LOWER_UP> mtu 65536 qdisc noqueue state UNKNOWN group default qlen 1000
link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00
inet 127.0.0.1/8 scope host lo
valid_lft forever preferred_lft forever
inet6 ::1/128 scope host
valid_lft forever preferred_lft forever
2: eth0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc mq state UP group default qlen 1000
link/ether 00:00:00:00:00:00 brd ff:ff:ff:ff:ff:ff
inet 192.168.1.200/24 brd 192.168.1.255 scope global noprefixroute eth0
valid_lft forever preferred_lft forever
inet6 fe80::196b:18c1:73e5:33fd/64 scope link noprefixroute
valid_lft forever preferred_lft forever
Code language: PHP (php)
2.nmcliとは
Red Hat Enterprise Linuxおよび派生のCentOSでは、「NetworkManager」という管理ツールが用意されています。「NetworkManager」はネットワークデバイスの検出と関連システムの設定支援を行います。
nmcliは、NetworkManagerの機能にCLI(Command Line Interface)からアクセスできます。ifconfigなど、他のコマンドを利用するか、/etc/sysconfig/network-scriptsディレクトリ以下にあるスクリプトを直接編集していたネットワーク関連の設定を、一元的に処理することが可能です。ただしnmcliからのCLIでの設定を推奨しています。
基本的な用法は、以下に記載するコマンド名、操作対象を意味するオブジェクト、設定項目、オプションの順となります。有効なネットワークデバイスの一覧やIPアドレスなど設定情報を確認するだけでなく、ホスト名やIPアドレスの設定変更、回線のOn/Offなど、NetworkManagerで行う作業のほぼ全てがCLIから実行できます。
※NetworkManagerおよびnmcliと同等の管理作業を行うためのCUIとして「nmtui」も用意されている。対話型のツールであり、カーソルキーで項目を選びReturnキーで確定という方法で設定作業を行うことができる。
2-1.nmcliコマンド書式
オブジェクト一覧
オブジェクト | 設定項目 | 意味 |
---|---|---|
general | status | NetworkManagerの設定項目を全て表示する |
hostname | ホスト名を表示/設定する | |
permissions | NetworkManagerの各種スイッチを表示する | |
logging | ログを表示/取得範囲を設定する | |
networking | on(off) | 指定した回線を有効化(無効化)する |
connectivity | 接続ステータスを表示する | |
radio | all | radioオブジェクトの全スイッチの状況を表示する |
wifi | NetworkManagerが管理する無線LANの項目を表示/設定する | |
wwan | モバイルブロードバンド回線をオン/オフする | |
wimax | WiMAX回線をオン/オフする | |
connection | show | 接続状況を表示する |
up(down) | 指定した回線を有効化(無効化)する | |
add | 新しいネットワークデバイスを追加する | |
edit | 既存のネットワークデバイスを編集する(インタラクティブ) | |
modify | 既存のネットワークデバイスを編集する | |
delete | 既存のネットワークデバイスを削除する | |
reload | 全ての接続をディスクから読み直す | |
load | ファイルから接続設定を読み取る | |
device | status | ネットワークデバイスの状態を表示する |
show | ネットワークデバイスの詳細情報を表示する | |
connect | ネットワークデバイスを接続する | |
disconnect | ネットワークデバイスの接続を解除する | |
wifi | 有効なWi-Fiアクセスポイントを一覧する | |
wimax | WiMAXの接続事業者を一覧する |
オプション一覧
オプション | 内容 |
---|---|
-t | 簡潔な形式で出力する |
-p | 読みやすい形式で出力する |
-m | 出力モードを変更する(tabular=タブ分割、multiline=行分割) |
-f | 出力フィールドを指定する |
-e | コラムセパレーターをエスケープする |
-n | NetworkManagerおよびnmcliのバージョンチェックを行わない |
-a | パラメーターが足りない場合問い合わせる |
-w | 動作完了までのタイムアウトを設定する |
3.Nic自動起動設定
上記のip aコマンドで表示されたIP設定モジュールに対して設定します。またオブジェクトはconnectionをconのように省略表記可能です。他に同じ省略が可能な物がなければcでconnectionの意味を持たせることが可能です。
# eth0設定確認
[umilcl@localhost ~]$ nmcli con show eth0 | grep autoconnect
#NICの開始
[umilcl@localhost ~]$ nmcli dev connect eth0
#NICの自動起動の有効化
[umilcl@localhost ~]$ nmcli con mod eth0 connection.autoconnect yes
Code language: PHP (php)
4.IPアドレス設定
上記のip aコマンドで表示されたIP設定モジュールに対してIPアドレスを設定します。
nmcli c mod <ip設定モジュール> ipv4.method manual ipv4.addresses <設定アドレス>/<サブネット> ipv4.gateway <ゲートウェイ>
nmcli c mod eth0 ipv4.method manual ipv4.addresses 192.168.1.100 ipv4.gateway 192.168.1.1 ipv4.dns 192.168.1.253 ipv4.dns-search hogehoge.com
systemctl restart NetworkManager
systemctl restart network
Code language: HTML, XML (xml)
最後に
nmcliでの設定方法を記載しました。今までconfig直書きだったので少し抵抗がありますが、システム的にはこちらの方法でやった方がいいです。
Hyper-V環境へのCentOS7の導入についても紹介しておりますので、参考にリンクを記載しておきます。