我从nf_conntrack获得了一些跟踪,在其中我发现tcp连接不会从TIME_WAIT状态变为CLOSE状态。当TIME_WAIT状态为零时,它们只会从nf_conntrack中删除。
这是我收集的跟踪记录。
ipv4 2 tcp 6 9 TIME_WAIT src=192.168.20.236 dst=80.249.99.148 sport=60653 dport=8080 packets=31 bytes=1825 src=80.249.99.148 dst=10.10.10.163 sport=8080 dport=60653 packets=157 bytes=231298 [ASSURED] mark=0 use=2
ipv4 2 tcp 6 9 TIME_WAIT src=192.168.20.236 dst=80.249.99.148 sport=60655 dport=8080 packets=21 bytes=1425 src=80.249.99.148 dst=10.10.10.163 sport=8080 dport=60655 packets=83 bytes=118980 [ASSURED] mark=0 use=2
ipv4 2 tcp 6 2 TIME_WAIT src=192.168.20.236 dst=80.249.99.148 sport=60636 dport=8080 packets=8021 bytes=379919 src=80.249.99.148 dst=10.10.10.163 sport=8080 dport=60636 packets=16347 bytes=27033437 [ASSURED] mark=0 use=2
ipv4 2 tcp 6 6 TIME_WAIT src=192.168.20.236 dst=80.249.99.148 sport=60645 dport=8080 packets=446 bytes=18427 src=80.249.99.148 dst=10.10.10.163 sport=8080 dport=60645 packets=1469 bytes=2459184 [ASSURED] mark=0 use=2
ipv4 2 tcp 6 9 TIME_WAIT src=192.168.20.236 dst=80.249.99.148 sport=60649 dport=8080 packets=69 bytes=3347 src=80.249.99.148 dst=10.10.10.163 sport=8080 dport=60649 packets=237 bytes=436568 [ASSURED] mark=0 use=2
ipv4 2 tcp 6 2 TIME_WAIT src=192.168.20.236 dst=80.249.99.148 sport=60641 dport=8080 packets=2264 bytes=115101 src=80.249.99.148 dst=10.10.10.163 sport=8080 dport=60641 packets=4842 bytes=7901678 [ASSURED] mark=0 use=2
ipv4 2 tcp 6 9 TIME_WAIT src=192.168.20.236 dst=80.249.99.148 sport=60654 dport=8080 packets=24 bytes=1547 src=80.249.99.148 dst=10.10.10.163 sport=8080 dport=60654 packets=111 bytes=167265 [ASSURED] mark=0 use=2
ipv4 2 tcp 6 8 TIME_WAIT src=192.168.20.236 dst=80.249.99.148 sport=60653 dport=8080 packets=31 bytes=1825 src=80.249.99.148 dst=10.10.10.163 sport=8080 dport=60653 packets=157 bytes=231298 [ASSURED] mark=0 use=2
ipv4 2 tcp 6 8 TIME_WAIT src=192.168.20.236 dst=80.249.99.148 sport=60655 dport=8080 packets=21 bytes=1425 src=80.249.99.148 dst=10.10.10.163 sport=8080 dport=60655 packets=83 bytes=118980 [ASSURED] mark=0 use=2
ipv4 2 tcp 6 1 TIME_WAIT src=192.168.20.236 dst=80.249.99.148 sport=60636 dport=8080 packets=8021 bytes=379919 src=80.249.99.148 dst=10.10.10.163 sport=8080 dport=60636 packets=16347 bytes=27033437 [ASSURED] mark=0 use=2
ipv4 2 tcp 6 5 TIME_WAIT src=192.168.20.236 dst=80.249.99.148 sport=60645 dport=8080 packets=446 bytes=18427 src=80.249.99.148 dst=10.10.10.163 sport=8080 dport=60645 packets=1469 bytes=2459184 [ASSURED] mark=0 use=2
ipv4 2 tcp 6 7 TIME_WAIT src=192.168.20.236 dst=80.249.99.148 sport=60649 dport=8080 packets=69 bytes=3347 src=80.249.99.148 dst=10.10.10.163 sport=8080 dport=60649 packets=237 bytes=436568 [ASSURED] mark=0 use=2
ipv4 2 tcp 6 1 TIME_WAIT src=192.168.20.236 dst=80.249.99.148 sport=60641 dport=8080 packets=2264 bytes=115101 src=80.249.99.148 dst=10.10.10.163 sport=8080 dport=60641 packets=4842 bytes=7901678 [ASSURED] mark=0 use=2
ipv4 2 tcp 6 8 TIME_WAIT src=192.168.20.236 dst=80.249.99.148 sport=60654 dport=8080 packets=24 bytes=1547 src=80.249.99.148 dst=10.10.10.163 sport=8080 dport=60654 packets=111 bytes=167265 [ASSURED] mark=0 use=2
两条迹线之间相隔一秒,并且此后没有CLOSE状态连接。
这是怎么回事?
如何解决它,以确保每个连接在被擦除之前都进入CLOSE状态?