Image

지식 기반 → dmesg icmp: ip Source Route Failed 통나무

[가상 서버]
출판 날짜: 22.05.2025

리눅스 로그에서 dmesg 명령을 실행하면 다음과 같은 이벤트를 볼 수 있습니다:

icmp6_send: no reply to icmp error
icmp6_send: no reply to icmp error
icmp6_send: no reply to icmp error
icmp: xxx.xx.xxx.xx: Source Route Failed
icmp: xxx.xx.xxx.xx: Source Route Failed
icmp: xxx.xx.xxx.xx: Source Route Failed

1. icmp6_send: no reply to icmp error

운영 체제가 ICMPv6 오류 메시지(예: "목적지 연결 불가", "시간 초과" 등)를 보내려 했으나 응답을 받지 못했습니다.

대부분의 경우 이는 오류 메시지가 방화벽에 의해 차단되었기 때문입니다.

2. icmp: xxx.xx.xxx.xx: Source Route Failed

노드 xxx.xx.xxx.xx(라우터 또는 호스트)가 소스 라우팅(IP 패킷 헤더에 경로 지정)을 사용하려 했으나 실패했습니다.

소스 라우팅은 보안 취약점으로 간주되며 현대 운영 체제 및 네트워크 장치에서 대부분 비활성화되어 있습니다.

3. 원인

  • 소스 라우팅을 사용한 공격 시도(예: 스푸핑).
  • 네트워크 스캔(예: 소스 라우팅 옵션이 포함된 traceroute를 통한).

4. 결론 및 조치

4.1 icmp6_send: no reply to icmp error

IPv6 프로토콜 설정 및 작동을 확인하세요(예: ping6 사용). 또한 iptables 방화벽에서 IPv6 트래픽 제한을 설정할 수 있습니다:

iptables -A INPUT -p ipv6-icmp -m limit --limit 80/sec --limit-burst 80 -j ACCEPT
iptables -A INPUT -j REJECT --reject-with icmp6-adm-prohibited

제한이 이미 설정된 경우, 이 메시지는 제한 초과 시도를 나타내는 알림으로 나타납니다.

4.2 icmp: xxx.xx.xxx.xx: Source Route Failed

소스 라우팅이 비활성화되어 있는지 확인하려면 다음 명령을 실행하세요:

sysctl net.ipv4.conf.all.accept_source_route

응답은 0이어야 합니다(net.ipv4.conf.all.accept_source_route = 0).

IP xxx.xx.xxx.xx에서 의심스러운 활동이 있는지 로그를 확인하세요. 아마도 스캐너 또는 악의적인 행위자일 가능성이 높습니다.

일반적으로 별도의 조치가 필요 없으며, 이 메시지는 단순히 알림입니다.

5. 추가 조치 (선택 사항)

5.1 IP 차단

IP 주소를 차단할 수 있지만, 공격자는 보통 전체 서브넷을 사용하므로 효과가 없을 수 있습니다. 위의 조치로 충분하지만, 원한다면 다음과 같이 차단할 수 있습니다:

iptables -A INPUT -s xxx.xx.xxx.xx -j DROP

5.2 로깅 활성화

iptables -A INPUT -m policy --pol ipsec --dir in -j ACCEPT
iptables -A INPUT -m rt --rt-type 0 -j LOG --log-prefix "SRC ROUTE ATTEMPT: "
iptables -A INPUT -m rt --rt-type 0 -j DROP

시도 기록은 /var/log/syslog 파일에 나타납니다.

5.3 모든 인터페이스 설정 확인

sysctl -a | grep accept_source_route

IPv4의 출력은 다음과 같아야 합니다:

net.ipv4.conf.all.accept_source_route = 0
net.ipv4.conf.default.accept_source_route = 0
net.ipv4.conf.eth0.accept_source_route = 0

IPv6도 유사해야 합니다:

net.ipv6.conf.all.accept_source_route = 0
net.ipv6.conf.default.accept_source_route = 0
net.ipv6.conf.eth0.accept_source_route = 0

IPv6 및 IPv4의 마지막 두 명령은 eth0 을 사용합니다. 네트워크 인터페이스 이름은 다를 수 있습니다. ifconfig 또는 ip link show (ip l) 명령으로 확인할 수 있습니다.

5.4 sysctl 설정 변경

운영 체제 설정을 변경하고 재부팅 후에도 유지하려면 /etc/sysctl.conf 파일을 수정해야 합니다. 변경 사항을 적용하려면 다음 명령을 사용하세요:

sysctl -p

이 경우 파일의 줄은 다음과 같습니다:

net.ipv4.conf.all.accept_source_route = 0
net.ipv6.conf.all.accept_source_route = 0




No Comments Yet