【问题标题】:Scapy set tcp flow window bigger then 65535Scapy 设置 tcp 流窗口大于 65535
【发布时间】:2016-05-09 18:18:49
【问题描述】:

使用 scapy 时,如何设置流量控制窗口大于 65535 的 tcp 数据包? 我知道用 scapy 写作:

packet1[TCP].window=65535

将窗口设置为 65535;但是如果需要将窗口大小设置为大于 65535,则应该以不同的方式设置,因为在 tcp 标头中,窗口字段只有两个字节,所以它不能大于 65535,所以应该在另一个中完成方式。我知道这应该是可能的。

谢谢。

【问题讨论】:

    标签: tcp scapy flow-control


    【解决方案1】:

    排序答案是:您不能将 field TCP.window 设置为大于 65535 的值,因为它是用两个字节编码的:

    >>> ls(TCP)
    [...]
    window     : ShortField                          = (8192)
    [...]
    

    但 TCP 窗口可以高于 65535,使用“窗口比例”选项。窗口值是window 字段的值乘以 2 的窗口比例值的幂。

    在 Scapy 中:

    >>> IP()/TCP(window=65535, options=[('WScale', 10)])
    

    值为65535 * 2 ** 10, 67107840。

    【讨论】:

      猜你喜欢
      • 2015-06-26
      • 2015-06-24
      • 2016-09-05
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2014-01-12
      • 2013-10-05
      • 2013-01-01
      相关资源
      最近更新 更多