デバイスの確認
# nmcli device
DEVICE TYPE STATE CONNECTION
eth0 ethernet connected System eth0
eth1 ethernet disconnected --
eth2 ethernet disconnected --
lo loopback unmanaged --
deviceは省略してdでもいい。
# nmcli d
DEVICE TYPE STATE CONNECTION
eth0 ethernet connected System eth0
eth1 ethernet disconnected --
eth2 ethernet disconnected --
lo loopback unmanaged --
デバイス毎の詳しい状態はshowを使う。
# nmcli device show eth0
GENERAL.DEVICE: eth0
GENERAL.TYPE: ethernet
GENERAL.HWADDR: 9C:A3:BA:06:C8:81
GENERAL.MTU: 1500
GENERAL.STATE: 100 (connected)
GENERAL.CONNECTION: System eth0
GENERAL.CON-PATH: /org/freedesktop/NetworkManager/ActiveConnection/1
WIRED-PROPERTIES.CARRIER: on
IP4.ADDRESS[1]: xxx.xxx.xxx.xxx/23
IP4.GATEWAY: xxx.xxx.xxx.xxx
IP4.ROUTE[1]: dst = xxx.xxx.xxx.xxx/23, nh = 0.0.0.0, mt = 100
IP4.ROUTE[2]: dst = 0.0.0.0/0, nh = xxx.xxx.xxx.xxx, mt = 100
IP4.DNS[1]: xxx.xxx.xxx.xxx
IP4.DNS[2]: xxx.xxx.xxx.xxx
IP6.GATEWAY: --
デバイスの接続
# nmcli device connect eth0
Device 'eth0' successfully activated with '5fb06bd0-0bb0-7ffb-45f1-d6edd65f3e03'.
デバイスの切断
コンソール上から実行したいところ. ミスったら端末切断されてしまうので.
# nmcli device disconnect eth0
接続プロファイルの確認
# nmcli connection show
NAME UUID TYPE DEVICE
System eth0 5fb06bd0-0bb0-7ffb-45f1-d6edd65f3e03 ethernet eth0
System eth1 9c92fad9-6ecb-3e6c-eb4d-8a47c6f50c04 ethernet --
System eth2 3a73717e-65ab-93e8-b518-24f5af32dc0d ethernet --
connectionはcに、showはsに省略できる。
# nmcli c s
NAME UUID TYPE DEVICE
System eth0 5fb06bd0-0bb0-7ffb-45f1-d6edd65f3e03 ethernet eth0
System eth1 9c92fad9-6ecb-3e6c-eb4d-8a47c6f50c04 ethernet --
System eth2 3a73717e-65ab-93e8-b518-24f5af32dc0d ethernet --
起動中の接続プロファイルのみを表示したかったら--activeを付ける。
# nmcli connection show --active
NAME UUID TYPE DEVICE
System eth0 5fb06bd0-0bb0-7ffb-45f1-d6edd65f3e03 ethernet eth0
接続プロファイルの追加
# nmcli connection add type ethrnet ifname eth0 con-name eth0
接続プロファイルの修正
先頭に+を付けると値が追加される。
# nmcli connection modify eth0 ipv4.method mamual +ipv4.address xxx.xxx.xxx.xxx/24 ipv4.gateway xxx.xxx.xxx.xxx
逆に-を付けると値が削除される。
# nmcli connection modify eth0 ipv4.method mamual -ipv4.address xxx.xxx.xxx.xxx/24 ipv4.gateway xxx.xxx.xxx.xxx
""で設定を取り除く。
# nmcli connection modify eth0 ipv4.method auto ipv4.address "" ipv4.gateway ""
後述のnmcli c u eth0で接続プロファイルの更新を反映する。
接続のup(アクティベート)
既にアクティベートしているNICに対して再度upをすると、設定プロファイルの再読み込みが行われる.
# nmcli connection up eth0
接続のdown
デバイスの接続解除(nmcli d disconnect)と似ているけど、少し挙動が違うので注意.。nmcli d disconnectでデバイス接続解除すると、サーバ再起動時にデバイスが自動起動しなくなってしまう。nmcli c downの場合はデバイスの自動起動に影響はない。恒久的にデバイスを使わないようにするなら、nmcli d disconnectを使う、計画作業などで一時的にNICを落としたいだけなら、nmcli c downでよさそう。
# nmcli connection down eth0
ルーティング設定を追加
パケットが通らないGWを指定しても接続プロファイルの設定は成功するが、アクティベート時にエラーが発生し、デバイスの接続が解除されてしまうので注意。
# nmcli c m eth0 +ipv4.route "xxx.xxx.xxx.xxx/24 xxx.xxx.xxx.xxx"
# nmcli c u eth0
対話的に接続プロファイルを編集する
# nmcli connection edit
Valid connection types: adsl, bluetooth, bond, bridge, cdma, dummy, generic, gsm, infiniband, ip-tunnel, macsec, macvlan, 802-11-olpc-mesh (olpc-mesh), ovs-bridge, ovs-interface, ovs-port, pppoe, team, tun, vlan, vpn, vxlan, wimax, 802-3-ethernet (ethernet), 802-11-wireless (wifi), bond-slave, bridge-slave, team-slave
Enter connection type:
省略形だとこんな感じになる。
# nmcli c e
Valid connection types: adsl, bluetooth, bond, bridge, cdma, dummy, generic, gsm, infiniband, ip-tunnel, macsec, macvlan, 802-11-olpc-mesh (olpc-mesh), ovs-bridge, ovs-interface, ovs-port, pppoe, team, tun, vlan, vpn, vxlan, wimax, 802-3-ethernet (ethernet), 802-11-wireless (wifi), bond-slave, bridge-slave, team-slave
Enter connection type:
# nmcli connection edit
Valid connection types: adsl, bluetooth, bond, bridge, cdma, dummy, generic, gsm, infiniband, ip-tunnel, macsec, macvlan, 802-11-olpc-mesh (olpc-mesh), ovs-bridge, ovs-interface, ovs-port, pppoe, team, tun, vlan, vpn, vxlan, wimax, 802-3-ethernet (ethernet), 802-11-wireless (wifi), bond-slave, bridge-slave, team-slave
Enter connection type: ethernet
===| nmcli interactive connection editor |===
Adding a new '802-3-ethernet' connection
Type 'help' or '?' for available commands.
Type 'describe [<setting>.<prop>]' for detailed property description.
You may edit the following settings: connection, 802-3-ethernet (ethernet), 802-1x, dcb, ipv4, ipv6, tc, proxy
nmcli> help
------------------------------------------------------------------------------
---[ Main menu ]---
goto [<setting> | <prop>] :: go to a setting or property
remove <setting>[.<prop>] | <prop> :: remove setting or reset property value
set [<setting>.<prop> <value>] :: set property value
describe [<setting>.<prop>] :: describe property
print [all | <setting>[.<prop>]] :: print the connection
verify [all | fix] :: verify the connection
save [persistent|temporary] :: save the connection
activate [<ifname>] [/<ap>|<nsp>] :: activate the connection
back :: go one level up (back)
help/? [<command>] :: print this help
nmcli <conf-option> <value> :: nmcli configuration
quit :: exit nmcli
------------------------------------------------------------------------------