Debianネットワークインターフェースのセットアップ

Debian Network Interface Setup



Debian GNU / LinuxおよびDebian関連のディストリビューションでのネットワークインターフェースのセットアップに関する知識は、すべてのLinuxエンジニアにとって不可欠です。この記事では、適切な情報の入手先と、IPv4用に設定する方法について説明します。 IPv4 [2]IPv6 [3] 。オプションの数は非常に長いですが、特定の状況に合わせて多くの柔軟性を提供します。

Debianネットワークのセットアップ

ネットワークインターフェイスの構成全体は、/ etc / networkという名前の単一のディレクトリにあるプレーンテキストファイルに保存されます。このディレクトリには、IPv4とIPv6の両方のセットアップをカバーするための多数のファイルとサブディレクトリが含まれています。







  • インターフェイスとinterfaces.d:インターフェイスごとの一般的な構成
  • if-down.d:インターフェイスがダウンした場合に実行されるスクリプト
  • if-post-down.d:インターフェイスがダウンした後に実行されるスクリプト
  • if-up.d:インターフェイスがアップした場合に実行されるスクリプト
  • if-pre-up.d:インターフェイスが起動する前に実行されるスクリプト

特定の構成は、ネットワークインターフェイスごとに行われます。すべてをinterfacesという名前の単一のファイルに保存することも、interfaces.dディレクトリに個別のファイルとして保存することもできます。ポータブルデバイスからの典型的なIPv4構成を以下に示します。これは、1つのループバックインターフェイス (/dev/lo) 、イーサネットインターフェイス (/dev/eth0) 、およびワイヤレスインターフェイス (/dev/wlan0) で構成されます。 1行目は、ディレクトリ /etc/network/interfaces.d/ に格納されているすべてのスクリプトを含めることを示しています。 3行目から5行目は /dev/lo を構成し、7行目から9行目は/ dev / eth0を構成し、11行目はインターフェース/ dev / wlan0を構成します。単一コマンドの詳細な説明を以下に示します。



1 ソース /NS/通信網/interfaces.d/ *
2
3 #ループバックネットワークインターフェイス
4車で
5iface loinetループバック
6
7 #プライマリネットワークインターフェイス
8allow-hotplug eth0
9iface eth0 inet dhcp
10
十一iface wlan0 inet dhcp

他のDebianGNU / Linuxリリースまたはそれに基づくディストリビューションの場合、ファイルインターフェイスは似ているように見えますが、ネットワークデバイスの名前が異なります。 Debian 9以降、 /dev/eth0, /dev/eth1 のような古いネットワーク名を拡張します。および /dev/wlan0 デバイス名が変更される可能性があるため、削除されました。新しい名前はこれらの名前に似ています— /dev/enp6s0/dev/enp8s0/dev/enp0s31f6 、および /dev/enp5s0 [1] 。使用可能なネットワークインターフェイスについては、ファイル/ sys / class / netを参照してください—この場合、インターフェイスの名前は /dev/lo です。および /dev/enp0s3



使用可能なネットワークインターフェイスのリスト:


これらのインターフェースの構成は次のようになります。以下の画像は、Debian GNU / Linux9.5から取得したものです。」





Debian GNU / Linux 9.5の基本的なネットワーク構成:


次のステップとして、目的のインターフェースを構成するための単一のステートメントを見ていきます。

Debianネットワーク構成の詳細

起動時のインターフェースの自動有効化

システムの起動時に、セットアップスクリプトはネットワークインターフェイスの構成ファイルを調べます。インターフェイスを自動的に有効にするには、キーワードauto(allow-autoの略)に続けてインターフェイスの論理名を追加します。セットアップスクリプトは、コマンドifup -a(–allの略)を呼び出して、前述のインターフェイスをアクティブにします。次の行は、ループバックインターフェイス/ dev / loのみを表示します。



車で

ネットワークインターフェイスは、リストされている順序で表示されます。次の行は、最終的に/ dev / lo、続いて/ dev / wlan0、および/ dev / eth0を表示します。

auto lo wlan0 eth0

ネットワークケーブルが接続されている場合は、インターフェイスをアクティブにします

キーワードallow-hotplugは、物理接続に基づくイベントにつながります。指定されたネットワークインターフェイスは、ネットワークケーブルが接続されるとすぐにアクティブになり、ネットワークケーブルが抜かれるとすぐに非アクティブになります。次の行は、イーサネットインターフェイス/ dev / eth0のこれを示しています(リスト1の8行目と同様)。

allow-hotplug eth0

静的インターフェイス構成

ネットワーク内の他のコンピューターと通信するために、インターフェースにはIPアドレスが割り当てられます。このアドレスは、動的に(DHCPを介して)取得されるか、固定された方法で設定されます(静的構成)。したがって、インターフェイスの宣言は、キーワードifaceで始まり、その後にネットワークインターフェイスの論理名、接続タイプ、およびIPアドレスの取得に使用される方法が続きます。次の例は、静的IPv4アドレス192.168.1.5のネットワークインターフェイス/ dev / eth0についてこれを示しています。

iface eth0 inet static
アドレス192.168.1.5
ネットマスク255.255.255.0
ゲートウェイ192.168.1.1

インターフェイス宣言の後、いくつかのオプション(括弧内のオプション名)を指定するように求められます。これには、IPアドレス(アドレス)、ネットマスク(ネットマスク)、ブロードキャスト範囲(ブロードキャスト)、デフォルトゲートウェイのルーティングメトリック(メトリック)、デフォルトゲートウェイ(ゲートウェイ)、もう一方のエンドポイントのアドレスなどの値が含まれます。 (pointtopoint)、リンクローカルアドレス(hwaddress)、パケットサイズ(mtu)、およびアドレス有効性スコープ(scope)。次の例は、ネットワークインターフェイス/ dev / enp0s3のIPv6の構成を示しています。 [4]

iface enp0s3 inet6 static
アドレスfd4e:a32c:3873:9e59:0004 ::254
ネットマスク80
ゲートウェイfd4e:a32c:3873:9e59:0004 ::1

DHCPを介した動的インターフェイス構成

異なるネットワークに接続するには、柔軟性が必要です。動的ホスト制御プロトコル( DHCP )[5]はこの柔軟性を可能にし、ネットワークスクリプトはDHCPサーバーから引き渡されるネットワークインターフェイスにIPアドレスを割り当てます。次の行は、/ dev / wlan0という名前のwlanインターフェイスでこれを示しています。

iface wlan0 inet dhcp

#IPv6の場合は、代わりに次の行を使用してください。
iface wlan0 inet6 dhcp

上記の静的構成と同様に、いくつかのオプションを設定できます。これらのオプションは、DHCP設定によって異なります。特に、リストには、要求されるホスト名(hostname)、追加されたルートのメトリック(metric)、時間または秒単位の優先リース時間(leasehours、leasetime)、クライアントID(client)、またはハードウェアアドレス(hwaddress)が含まれます。 )。

別のオプション

構成ファイル/ etc / interfacesでは、ブートストラッププロトコルのセットアップも可能です( BOOTP )[6](bootp)、PPP(ppp)、および IPX [7]。

インターフェイス構成の表示

Debian GNU / Linuxのリリース8までは、コマンド/ sbin / ifconfigを使用してインターフェース構成を表示していました。以下の最初のイーサネットインターフェイスの設定を参照してください。

を使用したインターフェース構成 ifconfig

リリース9以降、コマンドifconfigはプリインストールされなくなり、以前のipに置き換えられました。代わりに、コマンドip addrshowを使用してください。

ipを使用したインターフェース構成:

インターフェイスの有効化と無効化

すでに上で説明したように、オプションautoは、起動時にインターフェースを自動的に有効にします。インターフェイスを手動で有効または無効にする2つのコマンドがあります。 Debian 8までは、ifconfig eth0upまたはifupeth0を使用してインターフェイスを有効にします。 Debian 9以降は、ifupeth0のみを使用してください。対応するのは、ifconfig eth0downとifdowneth0です。次の画像は、インターフェイスを有効にしたときのデフォルトの出力を示しています。

ifupを使用したインターフェースのアクティブ化:

さらにオプションを追加する

インターフェイスがアクティブ化または非アクティブ化された場合に備えて、さらにアクションを追加することができます。これらのスクリプトは、if-pre-upおよびif-post-downスクリプトと呼ばれ、インターフェイスを有効にする前と無効にした後に機能します。

次の例は、インターフェイスもアクティブな場合にアクティブになるファイアウォールと組み合わせてこれを示しています。 3行目では、インターフェイスがアクティブ化される前にスクリプト/usr/local/sbin/firewall-enable.shが呼び出されます(したがって、タグがプリアップされ、4行目ではスクリプト/usr/local/sbin/firewall-disable.shが呼び出されます。インターフェイスが非アクティブ化された後に呼び出されます。

1allow-hotplug eth0
2iface eth0 inet dhcp
3プレアップ/usr/ローカル/sbin/ファイアウォール-enable.sh
4ポストダウン/usr/ローカル/sbin/ファイアウォール-disable.sh

結論

Debian GNU / Linuxのネットワークインターフェースの基本的な設定は、数行のコードで比較的簡単です。追加オプションの詳細については、以下のリソースを参照してください。

リンクとリファレンス

[1] Debian Wiki、ネットワーク構成
[2] IPv4、ウィキペディア
[3] IPv6、ウィキペディア
[4] Debian静的IPIPv4およびIPv6
[5] 動的ホスト制御プロトコル(DHCP)、ウィキペディア
[6] ブートストラッププロトコル(BOOTP)、ウィキペディア
[7] インターネットワークパケットエクスチェンジ(IPX)、ウィキペディア

ありがとう

著者は、この記事を準備する際の彼の助けと批判的なコメントに対してアクセルベッカートに感謝したいと思います。