本ページでは、DHCP利用によるCentOSのIPアドレスを設定する方法を説明します。
IPアドレスの設定方法は、大きく分けてDHCPによる動的IPアドレス取得と、固定IPアドレス指定の2種類があります。
サーバのIPアドレスを固定したい場合は、固定IPアドレスによる設定を実施します。利用シーンとしては、CentOSをWebサーバとして構築し、クライアントPCから決まったIPアドレスでアクセスしたい場合などです。
Connectionの設定
事前状態確認
まず、現在のConnectionの設定を確認します。nmcli
コマンドに-f <フィールド名>
オプションを付けることで、ipv4に関するパラメータのみ確認可能です。
設定前の状態例として、設定対象のenp0s3
はDHCPによる動的IPアドレス設定となっています。
# nmcli -f ipv4 con show enp0s3
ipv4.method: auto
ipv4.dns:
ipv4.dns-search:
ipv4.addresses:
ipv4.gateway: --
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
設定変更
以下コマンドを実行することで、enp0s3
に固定IPアドレスとデフォルトゲートウェイを設定します。なお、ipv4.method
は、ipv4.addresses
を設定した後でないとえ
# nmcli con mod enp0s3 ipv4.addresses "192.168.1.1/24"
# nmcli con mod enp0s3 ipv4.gateway "192.168.1.254"
# nmcli con mod enp0s3 ipv4.method manual
# nmcli con down enp0s3 ; nmcli con up enp0s3
事後状態確認
設定を変更したところで、再度Connectionの状態を確認してみます。固定IPアドレスの設定前と異なり、ipv4.method
がmanualとなっており、ipv4.addresses
とipv4.gateway
に先ほど設定した値になっていることが確認できます。
# nmcli -f ipv4 con show enp0s3
ipv4.method: manual
ipv4.dns:
ipv4.dns-search:
ipv4.addresses: 192.168.1.1/24 #IPアドレス
ipv4.gateway: 192.168.1.254 #デフォルトゲートウェイ
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
IPアドレスの確認
現在使用されているIPアドレスを確認するには、ip addr
コマンドを使用します。以下の表示例では、3つのインターフェース(Device)が表示されています。今回固定IPアドレス設定を実施したenp0s3
に対して、inet
の項目で192.168.1.1/24
がIPアドレスとして指定されていることがわかります。
# ip addr
1: lo: <LOOPBACK,UP,LOWER_UP> mtu 65536 qdisc noqueue state UNKNOWN
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: enp0s3: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast state UP qlen 1000
link/ether 08:00:27:7d:ce:7d brd ff:ff:ff:ff:ff:ff
inet 192.168.1.1/24 brd 192.168.1.255 scope global enp0s3
valid_lft forever preferred_lft forever
inet6 fe80::a00:27ff:fe7d:ce7d/64 scope link
valid_lft forever preferred_lft forever
3: enp0s8: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast state UP qlen 1000
link/ether 08:00:27:17:a3:9c brd ff:ff:ff:ff:ff:ff
inet 192.168.56.102/24 brd 192.168.56.255 scope global dynamic enp0s8
valid_lft 1009sec preferred_lft 1009sec
inet6 fe80::a00:27ff:fe17:a39c/64 scope link
valid_lft forever preferred_lft forever
個別のインターフェース情報のみ表示したい場合は、ip addr show <Device名>
を実行することで表示する情報の絞込みが可能です。
なお、ip
コマンドもnmcli
コマンドと同様にオプション文字の省略が可能です。ip addr
の場合はip a
でも同じ実行結果を得られるので覚えておくと良いでしょう。