web-dev-qa-db-ja.com

トンネルによるMACアドレスの取得

現在、古いMS-DOSゲームにインターネットサポートを提供するために私自身のソフトウェアを追加することに取り組んでいます。マイプライマリ環境はLinuxであるため、Linux内からDosboxを使用し、ここからの指示に従って自分のインターネット接続をDoSboxにフィードします. インターネットのDosboxの設定

この後、Linuxは基本的に他のルータにDOSBOXのように機能しますが、DoSboxが使用するゲートウェイアドレスとDNSはインターネットに接続するためのホストと同じです。

その後、MTCP DOS Internet Suiteをダウンロードして、Ping ToolとそのHTGETツールを使用してGoogleのホームページを取得できますが、UNIXのTCPDUMPでパケットを分析すると、イーサネットフレームの最初の14バイトが表示されません。 ARPパケットも表示されず、MTCPスイートにはARPテーブルがありません。

だから私はそれが常に放送アドレスを使用していない限り、そのようなソフトウェアがそのようなソフトウェアがGoogleに接続できるかを理解していませんが、それはそのドレインネットワークリソースではないでしょうか。

私はIPパケットを使用している場合は、Dosboxから私のホスト(Linux)に接続することができます(ここでは同じコンピュータに対処しています)。少なくともtcpdumpはそれを表示しません)。

これはネットワーク上で送信しているデータです。

FF FF FF FF FF FF 00 02 12 00 56 34 08 06 00 01 08 00 06 04 00 01 00 02
12 00 56 34 C0 A8 07 02 FF FF FF FF FF FF 08 08 08 08 
 _

データのサイズが60バイトになるまで、データにゼロを追加します。

Dosboxは、EtherSlipドライバを介してイーサネットアドレスを識別します。00:02:12:00:56:34

Dosboxが実行されている間は、トンネルと情報は次のとおりです。

sl0: flags=4305<UP,POINTOPOINT,RUNNING,NOARP,MULTICAST>  mtu 1524
    inet 192.168.7.1  netmask 255.255.255.252  destination 192.168.7.2
    adaptive  txqueuelen 15240  (Adaptive Serial Line IP)
    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
 _

DosboxでネットワークにARP要求を発行すると、Linuxでtcpdumpを使用すると(何も表示するのではなく)ARPリクエストとして表示されます。

1
Mike St

MACアドレスは、ローカルレイヤ2 LANに対してのみ見られた、または関連性があります。また、すべてのレイヤ2ネットワークがMACアドレスを使用しているわけではありません。他のアドレッシングを使用するものもあります。 MACアドレスを使用するものは48ビットで、一部は64ビットのMACアドレスです。ルータは、MACアドレス指定を含むレイヤ2フレームを削除し、次のインターフェイスの新しいフレームを構築します。パケットは、ソースから宛先へのさまざまなレイヤ2プロトコルを通過する可能性があり、どのプロトコルが使用されているか、またはパス内にMACアドレッシングを使用する方法がわかりません。

Dosbox接続は、MACアドレス指定を使用するプロトコルを使用していないため、ARPは行われません。それは [〜#〜] slip [〜#〜] を使用しています。これは、PPPのようなポイントツーポイントプロトコルです。 MACアドレッシング(またはその他のレイヤ2アドレッシング、ARPはありません。PPPの場合は、スリップの場合は、可能な限り2つのエンドポイントしかありません。アドレスを使用せずに他の端。

3
Ron Maupin