我有一个简单的 iptables 输入规则,它将任何新连接记录到日志文件。
--log-tcp-options
并且--log-ip-options
标志都已设置,并且我得到了适当的OPT
输出。
我的日志中有一行如下所示:
11 月 29 日 17:00:00 IN=venet0 OUT= MAC= SRC=xxxx DST=xxxx LEN=64 TOS=0x00 PREC=0x00 TTL=53 ID=37898 DF PROTO=TCP SPT=57755 DPT=8888 WINDOW=65535 RES=0x00 SYN URGP=0选择 (0204057D010303010101080A3E521D4D0000000004020000)
我想了解如何解释OPT
字符串(粗体)。
- 是否有一些文献可以解释其实际含义?
- 我怎样才能让它变得可读?
答案1
0204057D010303010101080A3E521D4D0000000004020000
根据 sans.org 学习指南,
前 2 个字节(0x0204)04--is-length 02 表示 MSS 标志,
接下来的 2 个字节(0x057D)是最大尺寸段(MSS)的值,
下一个字节(0x01)是无操作,
接下来的 2 个字节(0x0303)表示已启用窗口缩放
3 个字节(“010101”)为无操作(又称为填充)
接下来的 2 个字节(“080a”)标记一个时间戳值
接下来的 4 个字节(“0x3E521D4D00000000”)是日期时间 5 * 2 个字节
接下来的 4 个字节(“0402”)sAck Ok
主文件: ftp://ftp.ietf.org/iana/tcp-parameters/tcp-parameters.xml
其他的:
https://datatracker.ietf.org/doc/html/draft-ietf-tcpm-tcp-security-03
http://www.ietf.org/mail-archive/web/tcpm/current/msg03199.html
答案2
RFC 791 定义了 IPv4 协议。在 3.1 节从第 15 页开始对该OPTIONS
字段进行了解释。
来源 :RFC 791
答案3
这是 TCP 报头的选项部分。
看这里了解详细信息。