이것iptables에 관한 Wikipedia 기사이것을 언급했다
PREROUTING
: 라우팅 결정이 내려지기 전에 패킷이 이 체인에 들어갑니다.
iptables는 추가 처리를 위해 패킷을 다른 체인으로 DROP
전송하거나 의도한 것과 다른 대상으로 전송하는 등 패킷에 대해 많은 작업을 수행할 수 있습니다. 따라서 취할 수 있는 모든 조치 중에서 어떤 일이 발생합니까?JUMP
DNAT
iptables
"라우팅 결정"덮여?
예를 들어 "라우팅 결정"에는 iptables가 수행할 수 있는 모든 가능한 작업이 포함됩니까? 즉, "라우팅 결정"이라는 문구를 "최종 결정"이라는 문구로 바꿀 수 있습니까? 즉:
PREROUTING
:패킷이 들어갑니다결정적인결정을 내리다. 테이블 자체는 패킷 처리 방법에 대한 결정적인 결정을 제공하지 않으며 패킷에 대한 일부 조정만 제공합니다.
그리고 DROP
그것이 라우팅 결정으로 간주되나요?
아니면 "루팅 결정"은 실제 루팅 작업에만 적용됩니까? 예를 들어 패킷을 새 네트워크로 전달합니까?
답변1
따라서 단순화를 위해 브리징을 완전히 무시하고 네트워크 계층의 컨텍스트에서만 유지하겠습니다.
이 경우 언급한 "라우팅 결정"은 nat
테이블의 체인을 통과한 직후에 발생하며 PREROUTING
이는 단순히 문제의 패킷이 로컬 호스트 자체에 바인딩되어 있는지 아니면 다른 호스트로 전달되어야 하는지를 결정하는 것을 의미합니다.
iptables에는 여러 경로가 있으므로 결정을 내려야 합니다.
- 패킷이 로컬 호스트를 향하는 경우 네트워크 계층을 떠나
INPUT
여러 테이블의 여러 체인을 통과한 후 애플리케이션 계층에 도달합니다. - 패킷이 전달될 경우 네트워크 계층에 머무르며 여러
FORWARD
체인을 통과합니다.
이 '결정'의 이유뒤쪽에nat
테이블 체인은 PREROUTING
이 패킷에 대해 네트워크 주소 변환을 수행하는 경우 대상 주소가 변경되는 곳이기 때문에 통과 됩니다.
체인 및/또는 테이블(즉, ACCEPT
sums DROP
)의 순회에 영향을 미치는 대상은 규칙에서 해당 점프를 정의하여 이동할 수 있는 대상입니다. 이는 iptables가 자체적으로 수행하는 작업이 아닙니다.
ACCEPT
or 문을 포함하는 체인이 DROP
순회된다는 점도 주목할 가치가 있습니다.뒤쪽에이 "라우팅 결정"은 이미 내려졌으므로 결정에 직접적인 영향은 없습니다.
"라우팅 결정"이 이루어지는 다른 장소가 있으며 패킷의 컨텍스트(로컬 호스트로, 로컬 호스트를 떠나는 등)에 따라 결정에 다른 내용이 포함될 수 있습니다.이것차이점을 이해하는 데 좋은 자료입니다. 언급한 "결정"이 표 6-3의 5단계임을 알 수 있습니다.