2013-12-16 27 views
0

假設我有一臺IP 42.98.1.70的路由器,其中有2個Nios與IP 192.168.1.200和192.168.1.300連接。路由器在端口10433上進行端口轉發,將數據包重定向到192.168.1.200。路由器內部網絡IP是192.168.1.100。是否在同一網絡內的主機之間發生UDP打孔?

當NIC 192.168.1.300發送數據包到套接字42.98.1.70:10433。主機192.168.1.200從套接字192.168.1.100:48900獲得一個數據包,據我所知,這看起來像是由路由器設置的一個穿孔套接字。因此,理論上,如果主機192.168.1.200用一個包向套接口192.168.1.100:48900發送一個數據包進行應答,那麼該數據包最終應該返回到主機192.168.1.300,因爲路由器應該通過其內部表映射橋接兩個'UDP打孔'。

但是,從192.168.1.200發送回192.168.1.100:48900的數據包永遠達不到192.168.1.300。

我懷疑可能發生的事情是UDP孔打孔不能在同一網絡上的NIC之間工作。它只能在網絡外部的源和內部的源之間工作。是這樣嗎?

回答

0

看完這個RFC - http://tools.ietf.org/html/rfc5128後,看起來我正在嘗試做的事就是所謂的「發釘」。儘管一些路由器支持它,但並非全部都支持。顯然,我的是其中之一。