1.一種基于白名單實現多網口共享IP地址的冗余通信方法,其特征在于,包括如下步驟:
步驟1、網卡驅動檢測指定網卡多個端口的鏈接狀態,并根據多網切換邏輯選擇當前網卡工作端口;
步驟2、設置當前網卡工作端口對應的白名單,所述白名單里寫入當前網卡工作端口允許接收的MAC地址,同時清除其他端口對應的白名單;
步驟3、當接收數據時:當前網卡工作端口僅接收目的地址列入白名單的報文,其余數據直接丟棄,且禁止其他端口接收數據;
當發送數據時:網卡驅動指定從當前工作端口發送數據。
2.根據權利要求1所述的一種基于白名單實現多網口共享IP地址的冗余通信方法,其特征在于,當當前網卡工作端口發生斷鏈時,網卡驅動根據多網切換邏輯自動切換到未發生斷鏈的端口,同時設置該端口對應的白名單,清除其他端口的白名單。
3.根據權利要求1所述的一種基于白名單實現多網口共享IP地址的冗余通信方法,其特征在于,多網切換邏輯為:
1)將網卡的多個端口分別按照優先級由高到低降序排列;
2)選擇連接狀態為正常且優先級最高的端口為當前網卡工作端口;
3)當當前網卡工作端口的連接狀態為異常時,進入步驟2)選擇新的當前網卡工作端口。
4.根據權利要求3所述的一種基于白名單實現多網口共享IP地址的冗余通信方法,其特征在于,多網切換邏輯還包括:當優先級高于當前網卡工作端口的端口連接狀態由異常恢復到正常時,則切換該端口為新的當前網卡工作端口。
5.根據權利要求1所述的一種基于白名單實現多網口共享IP地址的冗余通信方法,其特征在于,網卡和多個端口之間通過FPGA進行連接。
6.根據權利要求1所述的一種基于白名單實現多網口共享IP地址的冗余通信方法,其特征在于,網卡驅動檢測同一網卡的多個端口的鏈接狀態的具體步驟如下:
A、通過命令字,設置參與多網切換的端口;
B、通過命令字,獲取參與運行的多個網絡端口的連接狀態;
C、通過命令字,獲取當前正在進行通信的端口。