web-dev-qa-db-ja.com

tun0アドレスについて

私はすでにいくつかの検索を行っており、多かれ少なかれtun0インターフェースの機能を理解しています。私はさまざまな情報源から次の情報を得ました、

オペレーティングシステムがtun/tapデバイスを介して送信したパケットは、デバイスに接続するユーザー空間プログラムに配信されます。ユーザー空間プログラムは、パケットをtun/tapデバイスに渡すこともできます。この場合、tun/tapデバイスはこれらのパケットをオペレーティングシステムのネットワークスタックに配信(または「注入」)し、外部ソースからの受信をエミュレートします。 tun/tapインターフェースはソフトウェアのみのインターフェースです。つまり、カーネルにのみ存在し、通常のネットワークインターフェースとは異なり、物理的なハードウェアコンポーネントはありません(したがって、物理的なワイヤーは接続されていません)。

Tun/tapインターフェースは通常のネットワークインターフェースと考えることができます。カーネルがデータを送信する瞬間が来たと判断すると、代わりにインターフェースに接続されているユーザースペースプログラムにデータを送信します。

eth0tun0の出力を比較すると、次のようになります。


ifconfig eth0
eth0      Link encap:Ethernet  HWaddr 00:14:22:50:78:71  
          inet addr:172.16.210.32  Bcast:172.16.255.255  Mask:255.255.0.0
...
UP BROADCAST RUNNING MULTICAST  MTU:1500  Metric:1
<snipped>

ifconfig tun0
tun0      Link encap:UNSPEC HWaddr 00-00-00-00-00-00-00-00-00-00-00-00-00-00-00-00
          inet addr:10.8.0.1 P-t-P:10.8.0.2 Mask:255.255.255.255
UP POINTOPOINT RUNNING NOARP MULTICAST MTU:1500 Metric:1

ここで、2つを比較しようとすると、これらの違いがわかります。

  1. eth0にはMACアドレスがあり、当然tun0にはありません。

  2. eth0はブロードキャストモードで動作しており、tun0はポイントツーポイントモードで動作しています。

わからないことが次のような点があります。

  1. このシナリオでのアドレスP-t-P:10.8.0.2の役割は何ですか?

  2. tun0のサブネットマスクが255.255.255.255に設定されているのはなぜですか?

11
Masroor

ハードウェアネットワークリンクは、ポイントツーポイントまたはポイントツーマルチポイントのいずれかです。 pppリンクはポイントツーポイント、イーサネットはポイントツーマルチポイントです。 tunはどちらとしても機能できますが、あなたの場合はポイントツーポイントリンクとして機能します。ポイントツーマルチポイントインターフェイスには4つのアドレスが関連付けられています。具体的には、IPアドレス(インターフェイスのアドレス)、ネットワークアドレス、ブロードキャストアドレス、ネットマスクです。ポイントツーポイントリンクには2つのアドレスが関連付けられています。具体的には、IPアドレス(ニアアドレス)とポイントツーポイントピアアドレス(ファーアドレス)です。ポイントツーポイントリンクは2つのアドレスでのみ機能するため、ブロードキャストアドレスとネットワークアドレス、およびネットマスクには有用なデータがないか、フラグ値がありません。

最後のポイントのtunインターフェースはMACアドレスを持つことができますが、デフォルトのMACアドレスはありません。

5
hildred