ICMP/ping 트래픽을 생성하는 애플리케이션 모니터링

ICMP/ping 트래픽을 생성하는 애플리케이션 모니터링

​이 문제가 발생했습니다.

내 시스템(Linux/Fedora 24/x64)의 어떤 부분이 여러 IP 주소로 계속 ping을 보내고 있는데 어떤 프로세스가 이를 담당하는지 알고 싶습니다.

여러 기사를 찾았습니다(그리고답변) auditctl하지만 나에게는 효과가 없습니다.

고쳐 쓰다: 내 문제를 발견했습니다. 아래 답변을 참조하세요.


답변1

1 부:

디버깅을 위해 사용하려고 할 때 netstaticmp 트래픽을 볼 수 없어서 사용해 보았 ss으나 응용 프로그램이 표시되지 않아 호스트 중 하나에 ping을 실행하려고 시도했고 ping을 실행할 수 있었습니다 ss -anpw( -w원시 소켓의 경우) 출력에서 ​​확인하세요.

이 시점에서 저는 Wireshark로 돌아가서 패킷을 좀 더 자세히 살펴보기 시작했는데, 그게 제게 맞았습니다... (파트 2 참조).

2 부:

Wireshark 출력을 이해하지 못한 것 같습니다. 패킷은 ICMP이지만 에코/응답 유형이 아니라 들어오는 연결에 대한 방화벽(iptables)의 응답입니다.

내 iptables에는 다음 줄이 있습니다.

-A INPUT -j REJECT --reject-with icmp-host-prohibited

규칙과 일치하지 않는 수신 연결의 경우 ICMP 유형: 3(대상에 연결할 수 없음) 및 코드: 10(호스트 관리 금지)으로 응답합니다.

내 문제는 내 토렌트 클라이언트의 포트를 허용 목록에 추가하여 발생한 것 같지만 해당 포트는 HOME 영역 체인에 있고 어떤 이유로 내 홈 연결에 대한 기본 정책이 기본/공개로 설정되어 있습니다.

인터페이스 영역을 설정하고 iptable 체인의 포트를 화이트리스트에 추가한 후에는 더 이상 위의 ICMP 메시지가 표시되지 않습니다.

답변2

다음을 실행하는 것이 좋습니다.

tcpdump -nni ethernet_interface icmp

를 입력하여 Ethernet_interface를 가져옵니다 ifconfig. 일반적으로 그렇습니다 eth0(macs는 en0을 사용합니다). 옆에 IP가 있는 인터페이스를 찾으세요.

ICMP 에코 요청이 표시됩니다.

IP > Your_IP   

요청을 보내는 IP를 찾으면 링크한 페이지에 netstat프로세스 ID(pid)를 찾는 방법이 표시됩니다. 전송 IP에 로그인하고(권한이 있는 경우) netstat거기서 실행하세요.

관련 정보