티스토리 뷰

IT/Linux

[Linux][CentOS7] tcpdump, TCP 프로토콜 패킷 캡쳐

주인장 진빼이

연결 수립에 사용되는 3Way-HandShake

TCP 패킷 플래그

+-----+-----+-----+----+-----+----+
| URG | ACK | PSH | RST | SYN | FIN |
+-----+-----+-----+----+-----+----+

SYN 패킷 캡쳐 (클라이언트의 연결 시도)

$ tcpdump -i <interface> port 80 and "tcp\[tcpflags\] & (tcp-syn) !=0"

SYN+ACK 패킷 캡쳐(클라이언트 요청에 대한 서버 응답)

$ tcpdump -i <interface> port 80 and "tcp\[tcpflags\] & (tcp-syn) !=0 and tcp\[tcpflags\] & (tcp-ack) = 0"

SYN 또는 ACK 중 하나만이라도 포함된 패킷 캡쳐

$ tcpdump -i <interface> port 80 and "tcp\[tcpflags\] & (tcp-syn|tcp-ack) != 0"

TCP 통신 종료 (FIN+RST)

$ tcpdump -i <interface> port 80 and "tcp\[tcpflags\] & (tcp-fin|tcp-rst) != 0"

클라이언트에게 SYN Packet을 수신한 경우 iptables 정책에 의해 drop하여도 tcpdump에는 출력된다.

iptables을 이용하여 특정 클라이언트에게 들어온 요청에 대한 응답(SYN+ACK)을 하지 않을 수 있다.

사진 출처: gmlwjd9405.github.io/2018/09/19/tcp-connection.html

댓글
최근에 올라온 글
최근에 달린 댓글
Total
Today
Yesterday
«   2024/05   »
1 2 3 4
5 6 7 8 9 10 11
12 13 14 15 16 17 18
19 20 21 22 23 24 25
26 27 28 29 30 31
글 보관함