docker0
、仮想ネットワークインターフェイスですかlo
? virbr0
ループバックIPアドレスの代わりにdocker0
プライベートIPアドレスが割り当てられるのはなぜですか?virbr0
lo
プライベートIPアドレスがループバックアドレスのように機能できる場合は、ループバックIPアドレスの代わりにプライベートIPアドレスを割り当てることができますか?
ループバックアドレスは、127.*.*.*
例のように複数の小さなネットワークに分割されず、常に1つのネットワークを形成しますか?
192.168.*.*
プライベートIPアドレスの範囲。はい(wlx8
および)virbr0
のように、複数の小さなネットワークに分割されることがよくありますか?
ありがとうございます。
$ ifconfig
docker0: flags=4099<UP,BROADCAST,MULTICAST> mtu 1500
inet 172.17.0.1 netmask 255.255.0.0 broadcast 172.17.255.255
ether 02:42:a6:79:a6:bc txqueuelen 0 (Ethernet)
RX packets 0 bytes 0 (0.0 B)
RX errors 0 dropped 0 overruns 0 frame 0
TX packets 0 bytes 0 (0.0 B)
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 1552397 bytes 88437726 (88.4 MB)
RX errors 0 dropped 0 overruns 0 frame 0
TX packets 1552397 bytes 88437726 (88.4 MB)
TX errors 0 dropped 0 overruns 0 carrier 0 collisions 0
virbr0: flags=4099<UP,BROADCAST,MULTICAST> mtu 1500
inet 192.168.122.1 netmask 255.255.255.0 broadcast 192.168.122.255
ether 52:54:00:b1:aa:1f txqueuelen 1000 (Ethernet)
RX packets 123 bytes 12102 (12.1 KB)
RX errors 0 dropped 0 overruns 0 frame 0
TX packets 39 bytes 4300 (4.3 KB)
TX errors 0 dropped 0 overruns 0 carrier 0 collisions 0
wlx8: flags=4163<UP,BROADCAST,RUNNING,MULTICAST> mtu 1500
inet 192.168.1.97 netmask 255.255.255.0 broadcast 192.168.1.255
inet6 fe80::a0df:c436:afb1:8b45 prefixlen 64 scopeid 0x20<link>
ether txqueuelen 1000 (Ethernet)
RX packets 991338 bytes 536052615 (536.0 MB)
RX errors 0 dropped 0 overruns 0 frame 0
TX packets 618233 bytes 101520924 (101.5 MB)
TX errors 0 dropped 0 overruns 0 carrier 0 collisions 0
答え1
「ネットワーク」(ルーターなしで接続できるエンドポイントのセット)の構成は、そのネットワークのネットマスクによって決まります。したがって、docker0
172.17.xxネットワーク上にあり(同じレイヤ2ネットワーク上のすべての172.17.xxエンドポイントと通信できる)、lo
127.xxxネットワーク上にあり、virbr0
192.168.122.xネットワーク上にあり(そしてすべての192.168と通信できます) )。 .122.xエンドポイントは同じレイヤ2ネットワークにあり、wlx8
192.168.1.xネットワークにあり(入力します)、両方とも独立しています。ループバックネットワークの特別な点は、基本的にすべての127.xxxアドレスがlocalhostに対応することです。
docker0
、仮想ネットワークインターフェイスですかlo
?virbr0
はい、物理ネットワークインターフェイスに対応していません。
ループバックIPアドレスの代わりに
docker0
プライベートIPアドレスが割り当てられるのはなぜですか?virbr0
ループバックインターフェイスではないからです。これらのインターフェイスは通常、ローカルホスト(ここではネットワークの観点から興味を持っている部分)とは別のコンテナまたは仮想マシンと通信するために使用されます。
lo
プライベートIPアドレスがループバックアドレスのように機能できる場合は、ループバックIPアドレスの代わりにプライベートIPアドレスを割り当てることができますか?
いいえ、プライベートIPアドレスはループバックアドレスのようには機能しません。 (必要に応じて動作できますが、これはネットワーキングの専門家やIstioなどのシステムを設計する人のためのものであり、Envoyはマルチクラスタ設定に興味深いループバックトリックを使用します。)
ループバックアドレスは、
127.*.*.*
例のように複数の小さなネットワークに分割されず、常に1つのネットワークを形成しますか?
私の最初のポイントを参照してください。
192.168.*.*
プライベートIPアドレスの範囲。はい(wlx8
および)virbr0
のように、複数の小さなネットワークに分割されることがよくありますか?
はい、もう一度申し上げますが、最初のポイントを参照してください。
答え2
docker0
、仮想ネットワークインターフェイスですかlo
?virbr0
はい。
それらはすべて同じタイプではありません。これは、ハードウェアデバイスでは提供されないことを意味します。仮想デバイスはにリストされています/sys/devices/virtual/
。サブディレクトリを見てくださいnet/
。
プライベートIPアドレスがループバックアドレスのように機能できる場合、
私はあなたが何を意味するのかわかりません。
lo
ループバックIPアドレスの代わりに専用IPアドレスを割り当てることはできますか?
はい。私にとってとてもうまくいきます。自分で試してみてください。 ip addr add <ADDR> dev lo
。
ループバックアドレスは、
127.*.*.*
例のように複数の小さなネットワークに分割されず、常に1つのネットワークを形成しますか?
私は本当に知らない。しかし、私はSplitに依存するソフトウェアについて懐疑的です127.*.*.*
。 IPv6では、1つのループバックアドレスのみが取得されます::1
。なぜなら、著者はフルループバックネットワークを持たなければならない妥当な理由を見つけることができなかったからです(そのようなアドレスが2 ^ 24個は苦労しています)。だから、もちろんあまり使われていません。
192.168.*.*
プライベートIPアドレスの範囲。はい(wlx8
および)virbr0
のように、複数の小さなネットワークに分割されることがよくありますか?
サブネットを分割することは192.168.*.*
確かにそれを使用する最も一般的な方法です。あなたのホームルーターはほぼ基本的に192.168.0.*
orを使用します。192.168.1.*
これは、プライマリネットワークから隔離されたゲストWi-Fiアクセス用の2番目のネットワークなど、複数のサブネットを設定したい場合に役立ちます。
ループバックIPアドレスの代わりに
docker0
プライベートIPアドレスが割り当てられるのはなぜですか?virbr0
なぜそうではないのですか?
より具体的には、IPv4規格は次のように合理的に解釈できます。ループバックとして機能するには、すべてのループバックアドレスが必要です。。これは、これを使用すること(ドッカーコンテナとドッカーホスト間の通信など)が正当ではないことを意味します。これはループバックアドレスとして使用されなくなったためです。
たぶん標準的な要件には異なる意味があるかもしれません。つまり、物理ネットワークにアクセスできない場合は、より複雑な仮想ネットワークを構築するために使用することが合法です。標準ではこれを明確に明らかにしません。ループバックネットワーキングがサポートされている場合、通常はLinuxと同じ方法で解釈されます。だから人々はこの実装に慣れていて何か他のものを見て混乱しています。