2013-01-08 98 views
1

的初始序列號作爲測試的一部分,我需要能夠初始化一個TCP連接到特定值的ISN(初始序列號)。通常這是由OS/Network Stack選擇的隨機值,但我需要控制初始值。如何設置TCP套接字

有沒有辦法在C或Python來做到這一點?

+2

我相當肯定沒有standa rd爲此存在。您定位的是哪個操作系統? – cnicutar

+0

您將需要構建原始數據包併發送它們。下面是[一個例子,我發現對Linux在Python(http://www.binarytides.com/raw-socket-programming-in-python-linux/)。 – netcoder

+0

@cnicutar我會很高興與Linux或Windows,因爲我有這兩個可用。 – cottonke

回答

0
  • 下載lwiplwip-contrib
  • 創建一個新的支線接口,並與正常的網絡卡橋接它
  • 構建lwip-contrib/ports/unix/proj/minimal應用程序並運行它
  • 現在你應該能ping通LWIP棧
  • TCP序列號是struct tcp_pcb,值rcv_nxtsnd_nxt
  • 哈克的TCP代碼不隨機這些值,並添加一個TCP連接到minimal應用