이 sat0 장치는 무엇입니까?

이 sat0 장치는 무엇입니까?

나는 Hurricane Electric의 IPv6 터널링 프록시를 위해 내 컴퓨터(Debian Buster 실행)를 설정하고 있습니다. 여러 구성 방법에 대한 지침을 제공하지만 다음은 테스트 목적으로 사용한 iproute2에 대한 지침입니다.

ip tunnel add he-ipv6 mode sit remote 216.66.22.2 local <local-IP-addr> ttl 255
ip link set he-ipv6 up
ip addr add <IPv6-addr>/64 dev he-ipv6
ip route add ::/0 dev he-ipv6
ip -f inet6 addr

이렇게 하면 sit0신비한 인터페이스도 나타납니다. 분명히 이것은 6in4 터널링과 관련이 있지만 다음 외에는 이에 대한 더 많은 정보를 찾을 수 없습니다.이건 좀 특별해요그리고sit모듈이 로드될 때마다 존재합니다.. 궁금해서 새 인터페이스를 만드는 대신 터널 프록시에 맞게 구성해 보았는데 그렇게는 안되는 것 같습니다.

이 장치는 무엇입니까?

답변1

제가 알아낸 정보를 바탕으로Red Hat의 블로그 게시물입니다., 목적을 이해한다고 생각합니다. (저는 Linux 네트워킹 전문가가 아니므로 지식이 있는 사람이 잘못된 점을 발견하면 댓글로 제 의견을 정정하거나 답변을 게시해 주시기 바랍니다.)

먼저, 배경지식은 다음과 같습니다.

어플라이언스는 sitIPv6 트래픽을 가져와 IPv4 패킷으로 캡슐화/캡슐 해제하고 IPv4 인터넷을 통해 다른 호스트(예: IPv6 터널링 프록시)로 전송/수신하는 가상 네트워크 장치입니다. 외부 패킷에는 특수 프로토콜 번호인 41이 있습니다. (이것은 포트 번호와 유사하지만 TCP/UDP 계층이 아닌 IP 계층에 있습니다.)

  • 전송은 매우 간단합니다. sit장치에는 연결된 로컬 및 원격 IPv4 주소가 있으며 이러한 주소는 외부 IPv4 헤더의 소스 및 대상 주소가 됩니다. (소스 주소는 "any" 또는 0.0.0.0일 수도 있습니다. 이 경우 Linux는 캡슐화된 패킷을 보낸 IPv4 인터페이스를 기반으로 소스 주소를 선택합니다.)

  • 수신은 약간 더 복잡합니다. 프로토콜 41 패킷이 도착하면 Linux는 sit해당 패킷이 속한 장치를 확인해야 합니다. 이는 패킷의 외부 IPv4 소스 및 대상 주소를 확인하여 수행됩니다. 이 주소를 각 장치의 로컬 및 원격 주소와 비교하고 sit일치하는 장치가 패킷을 가져와 캡슐화를 해제하는 장치입니다.

sit0작동 방식 :

sitLinux가 어떤 장치와도 일치하지 않는 프로토콜 41 패킷 (예: 임의의 주소에서 오는 패킷) 을 받으면 어떻게 되는지 궁금할 것입니다 . 이 경우 로 전달됩니다 sit0.

sit0sit이러한 패킷을 처리하기 위해 커널 모듈에 의해 설정된 특수 "백업" 장치입니다 . 로컬 및 원격 주소는 0.0.0.0(즉, "모든")으로 설정되고 특정 물리적 장치에 연결되지 않으므로 다른 장치에서 처리되지 않은 프로토콜 41 패킷을 허용합니다 sit.

이것이 작동합니까? 특정한 경우일 수도 있지만 대부분의 경우 그러한 패킷을 삭제하고 싶을 것입니다. 그러한 포괄적인 장치를 만들어야 하는지 여부를 관리자가 결정하도록 하면 안되는 이유는 무엇인지 모르겠습니다. 아마도 몇 가지 역사적인 이유가 있을 것입니다.

관련 정보