Ubuntu 18.04 LTSでIPアドレスを設定するための完全な手順

Ubuntu 18.04 LTSでIPアドレスを設定するための完全な手順

序文

Ubuntu 18.04 LTS で IP アドレスを設定する方法は、これまで使用されていた設定方法とは大きく異なります。以前のバージョンとの違いは、Ubuntu 18.04 では IP アドレスの設定に Netplan が使用されることです。Netplan は、新しいコマンドライン ネットワーク設定ツールです。実際、Ubuntu 開発者はすでに Ubuntu 17.10 で Netplan を導入していました。次に導入する新しい IP 構成方法では、/etc/network/interfaces ファイルは使用されなくなり、代わりに YAML ファイルが使用されます。デフォルトの Netplan 構成ファイルは通常、/etc/netplan ディレクトリにあります。

このチュートリアルでは、Ubuntu 18.04 LTS 上の最小限のサーバーで静的 IP と動的 IP を構成する方法を学習します。

Ubuntu 18.04 LTS で静的 IP アドレスを設定する

まず、Netplan のデフォルトのネットワーク構成ファイルの場所を見つけます。

$ ls /etc/netplan/
50-クラウド-init.yaml

デフォルトのネットワーク構成ファイルは YAML ファイルである 50-cloud-init.yaml であることがわかります。

それでは、このファイルの内容を見てみましょう。

$ cat /etc/netplan/50-cloud-init.yaml

Ubuntu 18.04 をインストールしたときに、DHCP サーバーから IP アドレスを取得するようにネットワーク カードをすでに構成していたので、詳細な構成については次の図を参照してください。

enp0s3 と enp0s8 の 2 つのネットワーク カードがあり、両方とも DHCP サーバーから IP を取得するように構成されていることがわかります。

ここで、両方のネットワーク カードに静的 IP アドレスを設定します。まず、任意のエディターを使用して設定ファイルを編集します。

$ sudo nano /etc/netplan/50-cloud-init.yaml

次に、IP アドレス、サブネット マスク、ゲートウェイ、DNS サーバーなどの構成を追加します。ネットワーク カード enp0s3 の IP アドレスとして 192.168.225.50、ネットワーク カード enp0s8 の IP アドレスとして 192.168.225.51、ゲートウェイ アドレスとして 192.168.225.1、サブネット マスクとして 255.255.255.0 を使用します。次に、2 つの DNS サーバー IP 8.8.8.8 と 8.8.4.4 を使用します。

注意すべき点は、Ubuntu 18.04 では、この構成ファイルの各行はスペースでインデントする必要があり、TAB で置き換えることはできないということです。そうしないと、構成が機能しません。上の図に示すように、設定ファイル内の各行のインデントは、スペースバーを押すことによって実現されます。

同時に、Ubuntu 18.04 では、サブネット マスクを定義するときに、古いバージョンのように IP とサブネット マスクを 2 つの構成に分離しません。 Ubuntu の古いバージョンでは、通常、IP とサブネット マスクを次のように構成します。

アドレス = 192.168.225.50
ネットマスク = 255.255.255.0

netplan では、次のようにこれら 2 つの項目を 1 つに結合します。

アドレス: [192.168.225.50/24]

設定が完了したら、設定ファイルを保存して閉じます。次に、次のコマンドを使用して構成を適用します。

$ sudo ネットプランを適用

設定の適用時に問題がある場合は、以下のコマンドを使用して、現在の設定のどこが間違っているかを確認できます。

$ sudo ネットプラン --debug を適用

このコマンド ラインは次のデバッグ情報を出力します。

** (g​​enerate:1556): DEBUG: 09:14:47.220: 入力ファイル //etc/netplan/50-cloud-init.yaml を処理しています。
** (g​​enerate:1556): DEBUG: 09:14:47.221: 新しい処理パスを開始しています
** (g​​enerate:1556): DEBUG: 09:14:47.221: enp0s8: デフォルトのバックエンドを 1 に設定
** (g​​enerate:1556): DEBUG: 09:14:47.222: enp0s3: デフォルトのバックエンドを 1 に設定
** (g​​enerate:1556): DEBUG: 09:14:47.222: 出力ファイルを生成しています。
** (g​​enerate:1556): DEBUG: 09:14:47.223: NetworkManager: 定義 enp0s8 は対象ではありません (バックエンド 1)
** (g​​enerate:1556): DEBUG: 09:14:47.223: NetworkManager: 定義 enp0s3 は私たちには適していません (バックエンド 1)
DEBUG:netplan によって生成された networkd 構成が存在するため、networkd を再起動します
デバッグ: ネットプランで生成された NM 構成が存在しません
デバッグ:デバイス enp0s3 の動作状態はアップ、再接続されていません
デバッグ:netplan が enp0s3 の .link ルールをトリガーする
デバッグ: デバイス lo の動作状態が不明です。再接続できません
デバッグ: lo の .link ルールをトリガーする netplan
デバッグ:デバイス enp0s8 の動作状態はアップ、再接続されていません
デバッグ:netplan が enp0s8 の .link ルールをトリガーする

設定が正常かつ有効な場合は、次のコマンドを使用して IP を確認できます。

$ IPアドレス

Ubuntu 18.04 で設定した後、コマンド出力は次のようになります。

これまで、Ubuntu 18.04 LTS で Netplan を使用して静的 IP の構成を正常に完了しました。

Netplan の詳細については、man コマンドを使用してマニュアル ページを参照してください。

$ 男ネットプラン

Ubuntu 18.04 LTS で動的 IP アドレスを設定する

実は、設定ファイルの初期設定は動的 IP の設定なので、動的 IP を使用する場合は設定操作を行う必要はありません。すでに静的 IP アドレスを設定していて、以前の動的 IP 設定を復元したい場合は、上記の静的 IP 設定で追加された関連する設定項目を削除し、設定ファイル全体を上記の図 1 に示す状態に復元します。

これで、Ubuntu 18.04 で静的 IP アドレスと動的 IP アドレスを構成する方法がわかりました。個人的には、この方法はあまり好きではありません。古い構成方法の方がはるかに簡単です。どう思いますか?

要約する

上記はこの記事の全内容です。この記事の内容が皆さんの勉強や仕事に一定の参考学習価値を持つことを願っています。ご質問があれば、メッセージを残してコミュニケーションしてください。123WORDPRESS.COM を応援していただきありがとうございます。

以下もご興味があるかもしれません:
  • Ubuntu環境でのSSHの詳細なインストールと使用
  • Ubuntu仮想マシンでシリアル通信にcutecomを使用する方法
  • Ubuntuの基本設定: openssh-serverのインストールと使用
  • UbuntuへのDocker CEのインストール
  • Ubuntu での Python 3.7.1 のアップグレード プロセス ノート (推奨)
  • Linuxターミナルでシェルスクリプトを実行して現在実行中のアプリのログを直接出力するAndroidの実装方法
  • pyqt を使用して Linux コマンド プログラムをリモートでバッチ実行する方法
  • Linux シェル環境での Zabbix API の使用
  • Linux で誤って削除したメッセージ ファイルを復元する方法
  • ubuntu15.10 での hadoop2.7.2 の詳細なインストールと設定

<<:  Vue 仮想リストの実例

>>:  MySQL 基本チュートリアル パート 1 MySQL5.7.18 のインストールと接続チュートリアル

推薦する

埋め込みJavaScriptと外部リンクの基本的な応用方法

目次埋め込みJavaScriptと外部リンクの基本的な応用JavaScript の記述方法には、イン...

CSS3はシームレスなスクロールと手ぶれ防止を実現します

質問画像とテキストのシームレスなスクロールは、一般的に携帯電話では良い効果をもたらしますが、一部のモ...

Ubuntu 16.04にJenkinsをインストールするための詳細な手順

1. 前提条件JDKがインストールされましたecho $PATHソフトリンクを作成し、JDKのインス...

「fsck」を使用して Linux のファイルシステムエラーを修正する方法

序文ファイル システムは、データの保存方法と復元方法を整理する役割を担います。 いずれにせよ、時間の...

Docker+nextcloudで個人用クラウドストレージシステムを構築

1. Dockerのインストールと起動 yum で epel-release をインストールします ...

カルーセルバナーの自動回転効果を実現する純粋な CSS

さっそくコードを見てみましょう * { マージン: 0; パディング: 0; } 。容器 { マージ...

Node.js+express+socket でオンラインのリアルタイム多人数チャットルームを実現

この記事では、オンラインリアルタイム多人数チャットルームを実現するためのNode.js+expres...

MySQL の制限ページング最適化ソリューションの実装に関する簡単な説明

MySQL のページングステートメントの使用制限Oracle や MS SqlServer と比較す...

CSS エラスティック ボックス flex-grow、flex-shrink、flex-basis の詳細な説明

3 つの属性 flex-grow、flex-shrink、flex-basis の機能は次のとおりで...

Webpack4プラグインの実装原理についての簡単な説明

目次序文知る練習すれば完璧になる序文wabpack では、ローダーの他にプラグインがコア機能です。プ...

インデックスとテーブルリターンをカバーするMySQLの使い方

インデックスの2つの主要なカテゴリ使用されるストレージエンジン: MySQL 5.7 InnoDBク...

docker compose を使用して consul クラスタ環境を構築する例

領事の基本概念サーバーモードとクライアントモードサーバー モードとクライアント モードは、consu...

LNMP と phpMyAdmin を Docker にデプロイする方法

環境準備:複数のコンテナに基づいてホストに lnmp をデプロイします。 nginx サービス: 1...

MySQLは既存のコンテンツを保持し、後でコンテンツを追加します

このコマンドは、データ テーブル ff_vod を変更し、vod_url フィールドの内容の後に 9...

MySQLデータベースのマスタースレーブレプリケーションの原理と機能の分析

目次1. データベースのマスター/スレーブ分類: 2. MySQL マスタースレーブの紹介3. マス...