寫入 ADDRESSTABLE 篩選部分
位址篩選器會通知網路看門狗驅動程式接受具有各種指定 MAC 網址類別型的框架, (乙太網路、權杖通道和 FDDI) 。 您可以指定最多八個位址組。 位址組可以指定來源、目的地、兩者或兩者皆不可。
篩選準則的位址部分包含兩個結構: ADDRESSTABLE 和 ADDRESSPAIR。
如果您指定 NO 位址,則所有畫面格都會傳遞位址篩選。 不過,如果您指定任何位址,則只會傳遞傳遞指定位址篩選準則的畫面格。
建置位址篩選器牽涉到配置 ADDRESSTABLE 結構,並填入 ADDRESSPAIR 結構的成員。
若要建置擷取篩選的位址部分
使用CAPTUREFILTER結構的CAPTUREFILTER_FLAGS_LOCAL_ONLY旗標,將擷取限制為本機電腦的流量。
將此旗標設定不會將 NIC 設定為交錯模式;擷取檔案只會擷取本機流量。
使用下列範例程式碼來定義 ADDRESSTABLE 結構:
typedef struct _ADDRESSTABLE { DWORD nAddressPairs; DWORD nNonMacAddressPairs; ADDRESSPAIR AddressPair[MAX_ADDRESS_PAIRS]; } ADDRESSTABLE; typedef ADDRESSTABLE *LPADDRESSTABLE; typedef struct _ADDRESSPAIR { WORD AddressFlags; WORD NalReserved; ADDRESS DstAddress; ADDRESS SrcAddress; } ADDRESSPAIR; typedef ADDRESSPAIR *LPADDRESSPAIR;
使用下表所列的資訊來選取 ADDRESSPAIR 旗標類型。
旗標 意義 ADDRESS_FLAGS_MATCH_DST 符合目的地位址。 ADDRESS_FLAGS_MATCH_SRC 符合來源位址 ADDRESS_FLAGS_EXCLUDE 如果找到此位址 (定義的來源或目的地) ,則會排除框架。 ADDRESS_FLAGS_DST_GROUP_ADDR 僅針對廣播類型訊息,比對目的地位址的群組位 () 。 ADDRESS_FLAGS_MATCH_BOTH 符合目的地和來源位址。 填入目的地位址,這會根據您選取的 ADDRESSPAIR 旗標進行評估。
填入來源位址,這會根據您選取的 ADDRESSPAIR 旗標進行評估。
使用ADDRESSPAIR結構的陣列填入ADDRESSTABLE結構,其中包含驅動程式評估的位址組。 所有位址組都會評估為邏輯 OR 語句, (ADDRESSPAIR 1 ||ADDRESSPAIR 2) 。 您可以在擷取篩選中包含最多八個位址組。