【Linux】IPアドレスの確認方法をまとめてみた

目次

はじめに

おはようございます。CBtzです。

サーバー内で何かをする前によく確認するサーバーのIPアドレスですが、いくつか確認方法があるようですので、今回はその方法をまとめてみました。

では、具体的な確認方法を紹介します。

環境

OS : AlmaLinux 8.8

IPアドレスの確認方法

  • ifconfigコマンド
  • ipコマンド(aオプション)
  • hostnameコマンド
  • nmcliコマンド

ifconfigコマンドでIPアドレスを確認する

ifconfig
ネットワークインターフェースの状況を確認したり、設定を変更したりできるコマンド

inetの後ろに記載されている 203.0.113.50 がIPv4のIPアドレスです。
"lo"IPアドレスはローカルループバックアドレスで、自分自身を表すアドレスです。

[root@alma8.jp ~]# ifconfig
ens3: flags=4163<UP,BROADCAST,RUNNING,MULTICAST>  mtu 1500
        inet 203.0.113.50  netmask 255.255.255.0  broadcast 203.0.113.255
        ether 52:54:00:91:98:fd  txqueuelen 1000  (Ethernet)
        RX packets 270986625  bytes 37234438684 (34.6 GiB)
        RX errors 0  dropped 31699768  overruns 0  frame 0
        TX packets 161114460  bytes 50941207635 (47.4 GiB)
        TX errors 0  dropped 0 overruns 0  carrier 0  collisions 0

lo: flags=73<UP,LOOPBACK,RUNNING>  mtu 65536
        inet 127.0.0.1  netmask 255.0.0.0
        inet6 ::1  prefixlen 128  scopeid 0x10<host>
        loop  txqueuelen 1000  (Local Loopback)
        RX packets 749905  bytes 77298325 (73.7 MiB)
        RX errors 0  dropped 0  overruns 0  frame 0
        TX packets 749905  bytes 77298325 (73.7 MiB)
        TX errors 0  dropped 0 overruns 0  carrier 0  collisions 0

ipコマンドでIPアドレスを確認する

ip
ネットワークのルーティングやデバイス、ポリシーなどに関する確認や設定ができるコマンド

ipコマンドに"a(address)"オプションを付けることで、設定されている全てのIPアドレスを表示させることができます。

ifconfigコマンドとは表示が少し変わりますが、見方はほとんど同じです。
inetの後ろに記載されている 203.0.113.50 がIPv4のIPアドレスになります。
※ens3というネットワークデバイス名(NIC名)は、環境によって異なります。

[root@alma8.jp ~]# 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: ens3: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc fq_codel state UP group default qlen 1000
    link/ether 52:54:00:91:98:fd brd ff:ff:ff:ff:ff:ff
    inet 203.0.113.50/24 brd 203.0.113.255 scope global noprefixroute ens3
       valid_lft forever preferred_lft forever

hostnameコマンドでIPアドレスを確認する

hostname
システムのホスト名を確認したり、変更したりできるコマンド

hostnameコマンドに"-I(--all-ip-addresses)"オプションを付けることで、設定されている全てのIPアドレスを表示させることができます。

[root@alma8.jp ~]# hostname -I
203.0.113.50

nmcliコマンドでIPアドレスを確認する

nmcli
NetworkManagerを制御して、ネットワーク状況を確認したり、設定を変更したりできるコマンド

nmcliコマンドに"device show"というオブジェクトとアクションを付けることで、ネットワークデバイスの情報を表示させることができます。

IP4.ADDRESS[1] に記載されている 203.0.113.50 がIPアドレスです

[root@alma8.jp ~]# nmcli device show
GENERAL.DEVICE:                         ens3
GENERAL.TYPE:                           ethernet
GENERAL.HWADDR:                         52:54:00:91:98:FD
GENERAL.MTU:                            1500
GENERAL.STATE:                          100 (connected)
GENERAL.CONNECTION:                     ens3
GENERAL.CON-PATH:                       /org/freedesktop/NetworkManager/ActiveConnection/1
WIRED-PROPERTIES.CARRIER:               on
IP4.ADDRESS[1]:                         203.0.113.50/24
IP4.GATEWAY:                            203.0.113.1
IP4.ROUTE[1]:                           dst = 203.0.113.0/24, nh = 0.0.0.0, mt = 100
IP4.ROUTE[2]:                           dst = 0.0.0.0/0, nh = 203.0.113.1, mt = 100
IP4.DNS[1]:                             8.8.8.8
IP6.GATEWAY:                            --

GENERAL.DEVICE:                         lo
GENERAL.TYPE:                           loopback
GENERAL.HWADDR:                         00:00:00:00:00:00
GENERAL.MTU:                            65536
GENERAL.STATE:                          10 (unmanaged)
GENERAL.CONNECTION:                     --
GENERAL.CON-PATH:                       --
IP4.ADDRESS[1]:                         127.0.0.1/8
IP4.GATEWAY:                            --
IP6.ADDRESS[1]:                         ::1/128
IP6.GATEWAY:                            --
IP6.ROUTE[1]:                           dst = ::1/128, nh = ::, mt = 256

まとめ

サーバー環境により、利用できないコマンドがあるので、IPアドレスを確認できる方法をいくつか知っておくことで柔軟に対応できるようになりたいですね。

たまにはいつもと違うコマンドを試してみるのもいいのではないでしょうか。