現在のNW設定の状態確認
CentOS8のインストール中のGUIでネットワークの設置ができますが、その設定をスキップして後からコマンドラインで設定する場合の方法を解説します。
▼認識しているネットワークデバイスを確認
command # nmcli device eth0 ethernet disconnected -- io loopback unmanaged --
「eth0」にIPアドレスが設定されることで通常のPCと同じようにインターネットに接続が可能になります。
▼現在の「eth0」の詳細状況
command # nmcli connection show eth0 GENERAL.DEVICE: eth0 GENERAL.TYPE: ethernet GENERAL.HWADDR: 00:15:5D:00:73:02 GENERAL.MTU: 1500 GENERAL.STATE: 30 (disconnected) GENERAL.CONNECTION: -- GENERAL.CON-PATH: -- WIRED-PROPERTIES.CARRIER: ON
NWの設定は「nmcli connection modify」コマンドを利用して設定する。
▼固定でプライベートIPアドレスを設定
command # nmcli connection modify eth0 ipv4.address 192.168.0.50/24
etn0のデバイスに「192.168.0.50」のIPv4アドレスを設定した例です
さらに詳しく
ネットワークの範囲を識別するサブネットマスクと呼ばれるネットワークの設定により、利用できるIPアドレスの数が定義されます。
上記コマンドの「/24」はサブネットマスク「255.255.255.0」のNWで、使えるIPアドレスは「256個」といった意味の設定です。
▼デフォルトゲートウェイを設定
command # nmcli connection modify eth0 ipv4.gateway 192.168.0.1
eth0からインターネットに接続するために通るIPv4のルーターの出口は「192.168.0.1」ですよーといった意味の設定です。
▼DNSサーバーの設定
command nmcli connection modify eth0 ipv4.dns 192.168.0.1
eth0からインターネットに抜けるときに名前解決(IP⇔ドメイン)を行うDNSサーバーの場所は「192.168.0.1」という意味です。
さらに詳しく
庭用のブロードバンドルータでは、DNSサーバーのアドレス設定も上記のようにデフォルトゲートウェイと同じ設定にすることが一般的です。ルータが接続している上位プロバイダーのNWで実際のDNSサーバーを探して名前解決をしてくれるのです。
サーバー側はルータのゲートウェイに向けてリクエストを通信する感じになります。
▼eth0でDCHPを使わないように設定
command # nmcli connection modify eth0 ipv4.method manual
デフォルトではDHCPでルータにプライベートIP取りに行く。
さらに詳しく
この設定をすることで、DHCPでIPを取りに行くことなく、固定で設定したプライベートアドレスを使うことが出来ます。
尚、先に最初に設定した「192.168.0.50/24」のようにIPアドレスの設定をしておかないとエラーになってしまう場合があるので注意です。
▼「eth0」設定の状態確認
command # nmcli -f ipv4 con show eth0 ipv4.method: manual ★1 ipv4.dns: 192.168.0.1 ★2 ipv4.dns-search: ipv4.addresses: 192.168.0.50/24 ★3 ipv4.gateway: 192.168.0.1 ★4 ipv4.routes: ipv4.route-metric: -1 ipv4.ignore-auto-routes: no ipv4.ignore-auto-dns: no ipv4.dhcp-client-id: -- ipv4.dhcp-send-hostname: yes ipv4.dhcp-hostname: -- ipv4.never-default: no ipv4.may-fail: yes
- ★1:DCHPの「auto」から「manual」の固定IPになっている。
- ★2:DNSのIPが設定されている。
- ★3:「eth0」の自サーバーのIPアドレスが設定されている。
- ★4:デフォルトゲートウェイのIPが設定されている。
▼アクティブ化して設定内容を反映する
command $ nmcli connection up eth0 Connection successfully activated (/org/freedesktop/NetworkManager/ActiveConnection/1)
上記のようにエラーにならず「successfully」になればOKです。
▼非アクティブにする場合
command # nmcli connection down eth0
上記コマンドの「up」を「down」にすれば良いです。
▼アクティブ化後のデバイスの状態確認
command # nmcli device eth0 ethernet connected eth0 io loopback unmanaged --
「eth0」が「connected」になればOKです。
▼IPアドレスの割り振り確認
command # ip addr 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:15:5d:00:73:02 brd ff:ff:ff:ff:ff:ff inet 192.168.0.50/24 brd 192.168.0.255 scope global noprefixroute eth0 valid_lft forever preferred_lft forever inet6 2409:11:240:2c00:6e60:b622:d0a4:f9da/64 scope global dynamic noprefixroute valid_lft 2591981sec preferred_lft 604781sec inet6 fe80::8c5a:4cf3:f40a:b587/64 scope link noprefixroute valid_lft forever preferred_lft forever
NW設定後の状態確認
▼試しにgoogleにping(通信テスト)を打ってみる。
command # ping google.co.jp PING google.co.jp (172.217.24.131) 56(84) bytes of data. 64 bytes from nrt20s01-in-f131.1e100.net (172.217.24.131): icmp_seq=1 ttl=116 time=8.36 ms
上記のように応答時間と結果が表示されれば通信は出来ています。
▼デバイスの自動起動状況を確認
command # nmcli con show eth0
コマンド結果を送る場合はエンターキーを行を送ることができます。
コマンド結果が表示されている途中で「q」キーを押おすと出力が停止されます。
▼デバイスの自動起動状態の確認
command # nmcli con show eth0 | grep autoconnect connection.autoconnect: no connection.autoconnect-priority: 0 connection.autoconnect-retries: -1 (default) connection.autoconnect-slaves: -1 (default)
eth0のコンフィグの結果を「|」(パイプと呼ぶ)で「grep」(探す)コマンドに送って、「autoconnect」の文字列の行だけを表示させています。
上記のように「connection.autoconnect: no」の場合は、サーバーを再起動した場合、デバイスが自動でアクティベートにならず通信が出来なくなってしまうので、自動起動に設定します。
デバイスの自動起動設定
▼デバイスの自動起動の設定
command # nmcli connection modify eth0 connection.autoconnect yes
▼再度デバイスの自動起動状態を確認
command # nmcli con show eth0 | grep autoconnect connection.autoconnect: yes connection.autoconnect-priority: 0 connection.autoconnect-retries: -1 (default) connection.autoconnect-slaves: -1 (default)
「autoconnect」の設定が「yes」になる。
▼試しにサーバーを再起動
command # reboot
▼再起動後にIPアドレスを確認
command # ip addr 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:15:5d:00:73:02 brd ff:ff:ff:ff:ff:ff inet 192.168.0.50/24 brd 192.168.0.255 scope global noprefixroute eth0 valid_lft forever preferred_lft forever inet6 2409:11:240:2c00:6e60:b622:d0a4:f9da/64 scope global dynamic noprefixroute valid_lft 2591981sec preferred_lft 604781sec inet6 fe80::8c5a:4cf3:f40a:b587/64 scope link noprefixroute valid_lft forever preferred_lft forever
▼googleにping(通信テスト)を打ってみる。
command # ping google.co.jp PING google.co.jp (172.217.24.131) 56(84) bytes of data. 64 bytes from nrt20s01-in-f131.1e100.net (172.217.24.131): icmp_seq=1 ttl=116 time=8.36 ms