1

スイッチとルーターに接続されているサーバーをマップするスクリプトに取り組んでいます。http://www.cisco.com/en/US/tech/tk648/tk362/technologies_tech_note09186a00801c9199.shtmlにリストされているアルゴリズムを使用して MAC アドレスを抽出し、レイヤ 2 ポートをマップする作業を行っています。

レイヤ 3 ポートは別の問題です。これらは、ルーター/レイヤー 3 スイッチの「sh vlan」コマンドで表示されないポートです。理想的には、レイヤ 3 接続の基礎となるこれらのポートに存在する MAC アドレスを使用したいと思います。これは、IP アドレスよりも少し「永続的」であるためです。これらは、デバイスの MAC アドレス テーブルに表示されます。ただし、これらのポートには VLAN が関連付けられておらず、SNMP を介した MAC の取得は VLAN にインデックス付けされているため、非常に困難です。

私はこれに対して約1週間ほど頭を悩ませてきましたが、私が試したり見つけたりしたものでは、VLAN以外のMACアドレスを取得できないようです。この方法でレイヤ 3 ポートをマッピングすることは可能ですか、それともレイヤ 3 (IP アドレス) マッピングを使用する必要がありますか?

4

1 に答える 1

0

レイヤー 2 経由でデバイスに接続している場合は、レイヤー 3 アドレスで ping を使用して arp ルックアップを生成し、Mac の arp キャッシュを調べることができます...これは、任意のレイヤー 3 ポートでも機能します。 Portchannels のレイヤ 3 バージョンのような論理ポート。これはおそらく最も簡単な方法です。

SNMP の領域で 100% になりたい場合:

そのデバイスのインターフェイス テーブルを取得するには、以下の oid を実行します。そのデバイスのすべてのインターフェースのリストを返します。これは、SNMP エージェントを実行しているすべてのデバイス (サーバーを含む) で動作するはずです。

.1.3.6.1.2.1.2.2.1.2

これにより、インターフェース番号 (OID の最後の桁) とインターフェースの説明のリストが表示されます。SVI および物理インターフェイスで機能しますが、SVI 以外の論理タイプについては不明です。

次に、各インターフェイスについて、その mac を取得します (x はインターフェイス テーブルの値です)。

.1.3.6.1.2.1.2.2.1.6.x

これにより、Macが提供されます。(一部のデバイスでは先頭の 0 が切り捨てられる場合があります。) ただし、snmpwalk と get を実行するには、各デバイスに少なくとも 1 つのレイヤー 3 アドレスが必要です。

すべての Mac だけが必要な場合は、次の oid を実行します。

.1.3.6.1.2.1.2.2.1.6

このアプローチを使用して、大規模なネットワークで同様のことを行います。

于 2012-02-04T01:11:48.800 に答える