Iptables 테이블의 이름을 "tables"로 지정하는 이유는 무엇입니까?

Iptables 테이블의 이름을 "tables"로 지정하는 이유는 무엇입니까?

몇 가지 가이드를 읽은 후(예:이것) 그리고 Iptables 튜닝을 하면서 Iptables의 테이블 테이블 이름을 지정할 이유를 찾지 못했습니다.
테이블이 거의 없다고 하네요. 예를 들어,
"테이블" 에는 기본적으로 , , 및 nat3개의 체인이 있지만 테이블의 이러한 체인은 교차하지 않으며 서로 직접 따르지 않습니다. 그래서부터PREROUTINGOUTPUTPOSTROUTING패킷 흐름의 의견테이블의 개념을 강조하는 것은 전혀 의미가 없습니다..
이름"테이블" ( raw, filter, nat, mangle, security, ...) 오직우선순위를 표현하다체인 내의 규칙 그룹 및 기타 속성(예: nat규칙 그룹은 연결당 한 번만 작동, filter패킷당 작동 등).

따라서 "테이블에 여러 체인이 포함되어 있음"이 아니라 "체인에 특정 전역 우선순위(및 일부 기타 공통 속성)가 있는 규칙 그룹이 포함되어 있음"과 같은 것이 되어야 합니다. 아니요?

아니면 제가 뭔가 잘못 이해한 걸까요?

답변1

이름 목록의 유래는 다음과 같습니다.

  • 예전에는 간단한 규칙이 있었습니다.
  • 그런 다음 ipchain이 등장했습니다. 규칙을 서로 연결할 수 있었습니다.
  • 모든 방화벽 시스템을 대대적으로 재작성하여 업데이트 요청 및 적절한 응답과 같은 연결과 유사한 아이디어와 함께 모든 연결의 상태 테이블을 유지하는 필터가 탄생했습니다. 여기서 "테이블"이라는 이름이 유래되었습니다. 또한 경로 중 하나를 통과하는 패킷 프로세스(예: 시스템의 패킷이 수신됨)의 여러 부분에 대한 규칙은 여러 규칙 테이블(INPUT, FORWARD, OUTPUT, PREROUTING, POSTROUTING)로 구성될 수 있습니다.

위에 요약된 역사를 간단히 설명하면 다음과 같습니다.https://netfilter.org/about.html#history.

관련 정보