我有一个转移插座。我正在尝试更改数据包上的端口,因为我看到它们。当我这样做时 - 我是否需要重新计算TCP校验和和IP校验和?
我正在尝试这样做,但我在tcpdump中看到重置数据包。我不知道这是因为我正在计算tcp校验和错误,或者是否正在进行其他事情。
我使用了这个网站的cksum方法:
http://www.enderunix.org/docs/en/rawipspoof/
我认为使用转移插座,如果我改变一件事,它应该是相当简单的,但似乎不是。有没有TCP校验和计算器,我可以用它来验证我得到了正确的值?
答案 0 :(得分:0)
您需要重新计算校验和。以下是对计算的说明:TCP/IP Checksum calculation
答案 1 :(得分:0)
参见RFC 1631的第3.3节,了解NAT / PAT必须进行的校验和调整。您不必遍历整个数据包,只需根据修改的字节调整校验和。