Linux設定 · 2 min read · Nov 01, 2025

Linuxの基本 - Ubuntuで静的IPを設定する

このチュートリアルでは、コマンドラインからUbuntuシステムに静的IPアドレスを設定する方法を説明します。すべての現在のUbuntuバージョンのネットワーク設定をカバーし、静的IPアドレスの設定、ホスト名の設定、および名前解決の設定に関する手順を含みます。

Ubuntu 22.04、Ubuntu 20.04、およびUbuntu 18.04のネットワーク設定

Ubuntuのネットワーク設定は、netplanというツールを使用して行います。これは従来の/etc/network/interfacesファイルに置き換わりました。

UbuntuでNetplanを使用して静的IPアドレスを設定する

Netplanを使用して静的IPアドレスを設定する手順は以下の通りです。Netplanの設定ファイルはディレクトリ/etc/netplan/にあります。デフォルトの設定ファイルは/etc/netplan/01-netcfg.yamlです。

エディタでネットワーク設定ファイルを開きます。netplanの設定ファイル名はUbuntuのバージョンによって異なります。

Ubuntu 22.04およびUbuntu 20.04:

sudo nano /etc/netplan/00-installer-config.yaml

Ubuntu 18.04:

sudo nano /etc/netplan/01-netcfg.yaml

設定構文はPythonプログラミング言語(.yaml形式)であるため、行のインデントが重要です!

ファイルの内容はUbuntu 22.04 - 18.04で同じです。

以下は、最初のネットワークインターフェースens33に静的IPv4アドレス192.168.1.100とゲートウェイIP192.168.1.1の例です。サーバーは名前解決のために無料のGoogle DNSサーバー8.8.8.88.8.4.4を使用します。

# このファイルは、システムで利用可能なネットワークインターフェースを説明します
# 詳細については、netplan(5)を参照してください。
network:
  version: 2
  renderer: networkd
  ethernets:
    ens33:
      dhcp4: no
      dhcp6: no
      addresses: [192.168.1.100/24]
      gateway4: 192.168.1.1
      nameservers:
        addresses: [8.8.8.8,8.8.4.4]

または、Ubuntuサーバーのスクリーンショットとして:

Ubuntu 22.04のネットワーク設定ファイル

IPv6アドレスは、addresses行にカンマで区切って追加できます。例:

# このファイルは、システムで利用可能なネットワークインターフェースを説明します
# 詳細については、netplan(5)を参照してください。
network:
  version: 2
  renderer: networkd
  ethernets:
    ens33:
      dhcp4: no
      dhcp6: no
      addresses: [192.168.1.100/24, '2001:1::1/64']
      gateway4: 192.168.1.1
      nameservers:
        addresses: [8.8.8.8,8.8.4.4]

IPv6アドレスはシングルクォートで囲む必要があります。そうしないと構文エラーが発生します。

変更を適用するには、次のコマンドを実行します:

sudo netplan apply

または、–debugスイッチを使用して、netplan設定ファイルの解析が成功した場合に役立つ出力を得ることができます。

sudo netplan --debug apply

Netplanを使用してDHCPアドレスを設定する

DHCPサーバーからIPv4およびIPv6のネットワーク設定を取得するための設定は以下の通りです。

# このファイルは、システムで利用可能なネットワークインターフェースを説明します
# 詳細については、netplan(5)を参照してください。
network:
 version: 2
 renderer: networkd
 ethernets:
   ens33:
     dhcp4: yes
     dhcp6: yes

変更を適用するには、次のコマンドを実行します:

sudo netplan apply

さらにNetplanの設定オプション

Netplanは、Ubuntu 18.04でネットワークカード、仮想デバイス、VLAN、およびブリッジを設定するための複雑な新しい設定システムです。構文の詳細な説明とさらなる例については、manページを参照してください。

Ubuntu 12.04 - 17.04(Ubuntu 16.04 LTSを含む)のネットワーク設定

ステップ1: ネットワークインターフェースを設定する

このステップでは、好みのテキストエディタ(nano、gedit、vi)を使用して、以下のファイルを手動で編集してネットワークインターフェースを設定します。この例では、「nano」エディタを使用しています。ターミナルに次のコマンドを入力して、適切なファイルを編集できます:

この行から直接コピーして貼り付けできます。

sudo nano /etc/network/interfaces

ルートパスワードを入力すると、好みのエディタがファイルを開き、古いUbuntuバージョンでは次のように表示されます:

auto lo eth0
iface lo inet loopback
iface eth0 inet dynamic

systemdを使用しているUbuntuシステム(Ubuntu 16.04以降)では、ネットワークインターフェースはeth0の代わりにens33と呼ばれ、’dynamic’という単語は’dhcp’に置き換えられました。

DHCPによって自動的にIPアドレスが割り当てられる設定は次のようになります:

# このファイルは、システムで利用可能なネットワークインターフェースを説明します
# それらを有効にする方法については、interfaces(5)を参照してください。

source /etc/network/interfaces.d/*

# ループバックネットワークインターフェース
auto lo
iface lo inet loopback

# プライマリネットワークインターフェース
auto ens33
iface ens33 inet dhcp

静的に設定されたネットワークカードは、古いUbuntuバージョンでは次のようなセクションを持ちます:

auto lo eth0
iface lo inet loopback
iface eth0 inet static
        address xxx.xxx.xxx.xxx(ここにIPを入力)
        netmask xxx.xxx.xxx.xxx
        gateway xxx.xxx.xxx.xxx(ここにゲートウェイIPを入力、通常はルーターのアドレス)

古いUbuntuリリースの例:

auto lo eth0
iface lo inet loopback
iface eth0 inet static
    address 192.168.1.100
    netmask 255.255.255.0
    gateway 192.168.1.1

Ubuntu 16.04以降の例:

# このファイルは、システムで利用可能なネットワークインターフェースを説明します
# それらを有効にする方法については、interfaces(5)を参照してください。

source /etc/network/interfaces.d/*

# ループバックネットワークインターフェース
auto lo
iface lo inet loopback

# テスト

# プライマリネットワークインターフェース
auto ens33
iface ens33 inet static
 address 192.168.1.100
 netmask 255.255.255.0
 network 192.168.1.0
 broadcast 192.168.1.255
 gateway 192.168.1.1
 dns-nameservers 8.8.8.8 8.8.4.4

そして、Ubuntu 16.04システムからの完全なネットワーク設定ファイル:

インターフェース設定ファイル

「nano」エディタを使用して設定ファイルを編集する場合、Ctrl+xを押して変更を保存します。

変更されたバッファを保存します(「No」と答えると変更が破棄されます)?

<—「y」と入力

書き込むファイル名: interfaces

<—ENTER

ステップ2: DNSサーバーを設定する

/etc/resolv.confの変更は、Ubuntu < 14.04のシステムでのみ必要です。新しいUbuntuバージョンでは、nameserversは/etc/network/interfacesファイルまたはnetplan設定ファイルで設定されます。

a) Ubuntu 20.04

エディタでnetplan設定ファイルを開きます。この例ではnanoエディタを使用します:

sudo nano /etc/netplan/00-installer-config.yaml

DNSサーバーのIPアドレスを太字で示しました:

# このファイルは、システムで利用可能なネットワークインターフェースを説明します
# 詳細については、netplan(5)を参照してください。
network:
  version: 2
  renderer: networkd
  ethernets:
    ens33:
      dhcp4: no
      dhcp6: no
      addresses: [192.168.1.100/24]
      gateway4: 192.168.1.1
      nameservers:
        addresses: [8.8.8.8,8.8.4.4]

b) Ubuntu 18.04

nanoエディタでnetplan設定ファイルを開きます:

sudo nano /etc/netplan/01-netcfg.yaml

DNSサーバーのIPアドレスを太字で示しました:

# このファイルは、システムで利用可能なネットワークインターフェースを説明します
# 詳細については、netplan(5)を参照してください。
network:
  version: 2
  renderer: networkd
  ethernets:
    ens33:
      dhcp4: no
      dhcp6: no
      addresses: [192.168.1.100/24]
      gateway4: 192.168.1.1
      nameservers:
        addresses: [8.8.8.8,8.8.4.4]

c) Ubuntuバージョン14.04および16.04

再度/etc/network/interfacesファイルを開き、gateway行の直後にdns-nameservers 8.8.8.8という行を追加します。

sudo nano /etc/network/interfaces
auto lo
iface lo inet loopback
iface ens33 inet static
        address xxx.xxx.xxx.xxx(ここにIPを入力)
        netmask xxx.xxx.xxx.xxx
        gateway xxx.xxx.xxx.xxx(ここにゲートウェイIPを入力、通常はルーターのアドレス)
        dns-nameservers 8.8.8.8

nameservers 8.8.8.8と8.8.4.4はGoogleが提供する公共用のもので、ネットワーク設定で使用できます。

「nano」エディタを使用している場合、Ctrl+xを押して変更を保存します。

変更されたバッファを保存します(「No」と答えると変更が破棄されます)?

<—「y」と入力

書き込むファイル名: interfaces

<—ENTER

d) Ubuntuバージョン< 14.04

このステップでは、dns設定ファイルを手動で設定します。

sudo nano /etc/resolv.conf

エディタがファイルを開いたら、次の情報を入力します…

nameserver xxx.xxx.xxx.xxx(ここにdnsサーバーのIPを入力)
nameserver xxx.xxx.xxx.xxx(ここに代替dnsサーバーのIPを入力)

「nano」エディタを使用している場合、Ctrl+xを押して変更を保存します。

変更されたバッファを保存します(「No」と答えると変更が破棄されます)?

<—「y」と入力

書き込むファイル名: resolv.conf

<—ENTER

以下は例です:

nameserver 8.8.8.8
nameserver 8.8.4.4

ステップ3: ネットワークを再起動する

新しい設定でネットワークインターフェースを手動で再起動します。

Ubuntu 20.04および18.04では、netplanコマンドを使用して変更を適用し、ネットワークを再起動します。コマンドは次の通りです:

sudo netplan apply**

Ubuntuバージョン14.04および16.04では、systemctlを使用します:

systemctl restart ifup@eth0

この時点で、設定が正しいかどうかを確認できます:

ifconfig

すべてが正しければ、次のような結果が得られます。

eth0      Link encap:Ethernet  direcciónHW 00:33:27:46:2v:34
          Direc. inet:192.168.1.101  Difus.:0.0.0.0  Másc:255.255.255.0
 ...**

Ubuntu < 14.04では、ネットワーキング初期化スクリプトを使用します:

sudo /etc/init.d/networking restart

これにより、次のような結果が得られるはずです:

*ネットワークインターフェースの再構成… [OK]

ホスト名を設定する

Ubuntuサーバーまたはデスクトップのホスト名は、ファイル/etc/hostnameおよび/etc/hostsで設定されます。/etc/hostnameファイルは実際のシステムホスト名を設定し、/etc/hostsはローカル名解決に使用されます。

この例では、システムのホスト名をobelix.example.comに変更します。

まず、/etc/hostnameファイルを編集します。

sudo nano /etc/hostname

ホスト名ファイルには、ホスト名のローカル部分のみが含まれています。ここでのローカル部分は「obelix」です。/etc/hostnameファイルの内容を次のように変更します:

obelix

そしてファイルを保存します。編集後のnanoでのホスト名ファイルの様子:

Ubuntuのホスト名を設定

次に、エディタで/etc/hostsファイルを開きます:

sudo nano /etc/hosts

そして、システムのIPアドレスで始まる行を次のように変更します:

192.168.1.100   obelix.example.com      obelix

こちらが/etc/hostsファイルのスクリーンショットです。

Ubuntuのhostsファイル

フォーマットは次のようになります:

[IPアドレス] [完全なホスト名(ドメインを含む)] [ホスト名のローカル部分]

最後に、ホスト名の変更を適用するためにシステムを再起動します。

Share: X/Twitter LinkedIn

新しい投稿を受信箱で受け取る

スパムはありません。いつでも購読を解除できます。