RETURN
iptables 명령에서 대상의 역할을 이해하지 못합니다 .
여기서부터 의문이 생긴다가이드그것은 말한다:
체인은 패킷을 순서대로 확인하는 규칙 집합입니다. 패킷이 이러한 규칙 중 하나와 일치하면 관련 작업을 수행하고 체인의 나머지 규칙과 비교하여 확인되지 않습니다.
따라서 패킷이 규칙과 일치하고 다른 규칙 확인을 중지하는 경우 해당 패킷이 왜 필요합니까 RETURN
?
예를 들어 인터넷에서 다음과 같은 내용을 찾았습니다.
iptables -A PREROUTING -t mangle -i wlan0 -s 192.168.1.10 -j MARK --set-mark 30;
iptables -A PREROUTING -t mangle -i wlan0 -s 192.168.1.10 -j RETURN;
왜 필요한가요 RETURN
? 패킷이 첫 번째 규칙과 일치하면 다른 규칙 실행이 자동으로 중지됩니다.
답변1
ACCEPT
패킷은 , 또는 에 DROP
도달 할 때까지 체인을 통과합니다 . 경기에 종료 조치가 포함되지 않는 한 경기 중에는 멈추지 않습니다. 귀하의 예에서는 첫 번째 규칙과 일치하는 패킷이 표시되지만 두 번째 규칙에 의해 검사(및 처리될 수 있음)됩니다.REJECT
RETURN
참고용으로 관련 부분은 다음과 같습니다.매뉴얼 페이지:
방화벽 규칙은 패킷과 대상에 대한 기준을 지정합니다. 패킷이 일치하지 않으면 체인의 다음 규칙이 확인됩니다. 일치하면 다음 규칙은 사용자 정의 체인의 이름 또는 특수 값 중 하나일 수 있는 대상 값으로 지정됩니다 ACCEPT
. DROP
, REJECT
] QUEUE
, 또는 RETURN
.
ACCEPT
패킷을 통과시키라는 의미입니다.DROP
패킷을 바닥에 떨어뜨렸음을 나타냅니다. 즉, 패킷을 버리고 응답을 보내지 않음을 나타냅니다.- [
REJECT
일치하는 패킷에 대한 응답으로 오류 패킷을 다시 보내는 데 사용됩니다. 그렇지 않으면DROP
TARGET을 종료하고 규칙 순회를 종료하는 것과 같습니다. ] QUEUE
패킷을 사용자 공간으로 전달하는 것을 의미합니다.RETURN
체인 순회를 중지하고 이전(호출) 체인의 다음 규칙에서 다시 시작하는 것을 의미합니다. 체인 정책에 의해 지정된 대상은 내장 체인의 끝에 도달하거나 대상이 있는 내장 체인의 규칙이 일치하는 경우RETURN
패킷의 운명을 결정합니다 .
귀하의 구체적인 우려 사항에 대해 다음과 같이 말씀드리고 싶습니다.당신의 가이드오해의 소지가 있습니다. "상관 작업"이 5가지 터미널 작업 중 하나가 아닌 한, 패킷은 RETURN
마지막에 암시적 작업에 도달할 때까지 체인을 통해 계속 흐릅니다 .