私は/etc/network/interfaces
の使用方法の非常に基本的な概念を理解しましたが、オンラインで見つけたものはすべて例です。私が見逃しているのは、構文の説明、コマンドの意味の説明、およびコマンドに必要な順序です。理解したいのは、ほとんどの場合、コピーと貼り付けだけでは不十分であり、新しいマシンで作業していないため、多くの問題が発生するため、既存の構成を上書きすることはできません。 man interfaces
は非常に複雑に記述されているため、あまり役に立ちませんでした。
私が持っている質問の例:inet
行のiface
は正確に何を意味するのか(マンページで見つけることもできませんでした)、manual
行のiface
は正確に何を意味するのか(多くの例ではそれを使用していますが、マンページによると追加の構成が必要です)次に、例にはないファイル)、いつ使用する必要がありますか?いつですか?ブリッジを作成すると、インターフェースは正確にどうなりますか?
さて、/etc/network/interfaces
を理解しやすくするために、分割してみましょう。
リンク層 +インターフェイスタイプオプション(通常、各インターフェイススタンザの最初のアドレスで、アドレスファミリ+メソッド interfaces(5)
によって呼び出されます) =マンページ):
auto interface
–起動時にインターフェースを開始します。そのため、lo
インターフェースはこの種のリンク構成を使用します。
allow-auto interface
– auto
と同じ
allow-hotplug interface
–「hotplug」イベントが検出されたときにインターフェースを開始します。現実の世界では、これはauto
と同じ状況で使用されますが、「udev hotplug apiによって検出される」または「ケーブルリンクされる」などのイベントを待機するという違いがあります。詳細については、「 関連アイテム(hotplug) 」を参照してください。
これらのオプションは、ほぼ「レイヤー2」オプションであり、インターフェースにリンク状態を設定し、「レイヤー3」(ルーティングとアドレス指定)とは関係ありません。例として、リンクの状態が何であれ、bond0インターフェースをアップにする必要のあるリンク集約があり、そのメンバーはリンクステートイベントの後にアップすることができます。
auto bond0
iface bond0 inet manual
down ip link set $IFACE down
post-down rmmod bonding
pre-up modprobe bonding mode=4 miimon=200
up ip link set $IFACE up mtu 9000
up udevadm trigger
allow-hotplug eth0
iface eth0 inet manual
up ifenslave bond0 $IFACE
down ifenslave -d bond0 $IFACE 2> /dev/null
allow-hotplug eth1
iface eth1 inet manual
up ifenslave bond0 $IFACE
down ifenslave -d bond0 $IFACE 2> /dev/null
したがって、この方法で リンク集約 を作成すると、インターフェイスが追加され、ケーブルリンクの状態から削除されます。
最も一般的なインターフェイスタイプ:
以下のすべてのオプションは、定義されたインターフェース(iface <Interface_family>
)のサフィックスです。基本的にiface eth0
は、イーサネットデバイス上にeth0
と呼ばれる スタンザ を作成します。 iface ppp0
は point-to-point インターフェースを作成する必要があり、このインターフェースの構成をwvdialconf
スクリプトに転送するinet wvdial
のようなアドレスを取得する方法はさまざまです。タプルinet
/inet6
+ option
は、使用される IPプロトコル のバージョンと、このアドレスが構成される方法(static
、dhcp
、scripts
...)を定義します。 オンラインDebianマニュアル にこれに関する詳細が記載されています。
イーサネットインターフェイスのオプション:
inet static
–静的IPアドレスを定義します。
inet manual
–インターフェースのIPアドレスを定義しません。一般に、ブリッジまたは集約メンバーであるインターフェース、無差別モードで動作する必要があるインターフェース(egポートミラーリングまたはネットワークTAP)、またはVLANデバイスに設定されています。これは、IPアドレスがなくてもインターフェースを維持する方法です。
inet dhcp
– DHCPプロトコルを介してIPアドレスを取得します。
inet6 static
–静的IPv6アドレスを定義します。
例:
# Eth0
auto eth0
iface eth0 inet manual
pre-up modprobe 8021q
pre-up ifconfig eth0 up
post-down ifconfig eth0 down
# Vlan Interface
auto vlan10
iface vlan10 inet static
address 10.0.0.1
netmask 255.255.255.0
gateway 10.0.0.254
vlan-raw-device eth0
ip_rp_filter 0
この例では、eth0
を起動し、vlan10
と呼ばれる VLANインターフェイス を作成します。これは、イーサネットフレームのタグ番号10を処理します。
インターフェーススタンザ(レイヤー2および3)内の共通オプション:
address
–静的IP構成インターフェースのIPアドレス
netmask
–ネットワークマスク。 cidrアドレスを使用する場合は省略できます。例:
iface eth1 inet static
address 192.168.1.2/24
gateway 192.168.1.1
gateway
–サーバーのデフォルトゲートウェイ。この男の1つだけを使用するように注意してください。
vlan-raw-device
– VLANインターフェースでは、「父」を定義します。
bridge_ports
–ブリッジインターフェイスで、そのメンバーを定義します。
down
– ifdown
の代わりに次のコマンドを使用してインターフェイスを停止します。
post-down
–インターフェースがダウンした直後に実行されるアクション。
pre-up
–インターフェースがアップする前のアクション。
up
– ifup
の代わりに次のコマンドを使用してインターフェイスを起動します。 iputils
で利用可能なオプションを使用することは、あなたの想像次第です。例として、up ip link set $IFACE up mtu 9000
を使用して、up
操作中に(mtu
オプション自体を使用する代わりに) jumbo frames を有効にすることができます。また、up sleep 5; mii-tool -F 100baseTx-FD $IFACE
のような他のソフトウェアを呼び出して、インターフェースが起動してから5秒後に100Mbps全二重を強制することもできます。
hwaddress ether 00:00:00:00:00:00
-ROMにハードコードされているか、アルゴリズムによって生成されたものを使用する代わりに、インターフェイスのMACアドレスを変更します。キーワードrandom
を使用して、ランダムなMACアドレスを取得できます。
dns-nameservers
–ネームサーバーのIPアドレス。 resolvconf
パッケージが必要です。これは、DNS関連の設定に/etc/network/interfaces
を使用する代わりに、/etc/resolv.conf
にすべての情報を集中させる方法です。 resolv.conf
構成ファイルは、システム内のプログラムによって動的に変更されるため、手動で編集しないでください。
dns-search example.net
–ホストのクエリにexample.netをドメインとして追加し、FQDNを作成します。 /etc/resolv.conf
のオプションdomain
wpa-ssid
–ワイヤレス:ワイヤレスを設定WPA SSID。
mtu
- [〜#〜] mtu [〜#〜] サイズ。 mtu 9000
=ジャンボフレーム。 Linuxボックスがより大きなMTUサイズをサポートするスイッチに接続されている場合に役立ちます。一部のプロトコルが壊れる可能性があります(snmpとジャンボフレームで悪い経験がありました)。
wpa-psk
–ワイヤレス:16進数にエンコードされたPSKをSSIDに設定します。
ip_rp_filter 1
- リバースパスフィルター 有効。ホストへのルートが2つある状況で役立ちます。これにより、パケットは、それが到着した場所(同じインターフェイス、そのルートを使用)から強制的に戻されます。例:lan(192.168.1.1/24
)に接続していて、管理タスク(192.168.1.10/24
)を実行するためにlan(172.16.1.1/24
)上の1つのインターフェースとdmz上の他のインターフェースを持つdlnaサーバーを持っているとします。コンピューターからdlna dmz ipへのsshセッション中に、情報が戻ってくる必要がありますが、dlnaサーバーがLANインターフェースを介して直接応答を配信しようとするため、永久にハングします。 rp_filterを有効にすると、接続が元の場所から確実に戻るようになります。詳細情報 ここ 。
これらのオプションの一部はオプションではありません。たとえば、ネットマスクのないインターフェースにIPアドレスを設定すると、Debianは警告を出します。
ネットワーク構成のより良い例 here を見つけることができます。
関連するもの:
/etc/network/interfaces
ネットワーク構成ファイルに関連する情報があるリンク:
私もそれを追加します:
--verboseフラグを使用すると、ifupで何が起こっているかを追跡できます。
私はこれの100%shureではありませんが、基本的にifupが呼び出されたとき、uが/ etc/network/interfacesからup ...ですべて実行されるようです。
私はそれがどのように関係しているのかわからない:サービスネットワーキング...
誰かが電話の後に何が起こっているのかを指摘するのであれば、いいでしょう:
service networking restart
ifup/ifdownに関連して。