iptables
나는 규칙 의 의미를 알아내려고 노력하고 있다.Ubuntu 라우터 설정을 위한 공식 가이드. 예를 들어, *nat
. 인터넷에서 에 *nat
대한 내용을 찾을 수 없습니다 iptables
.
*nat
-A POSTROUTING -o "$EXTIF" -j MASQUERADE
COMMIT
*filter
:INPUT ACCEPT [0:0]
:FORWARD DROP [0:0]
:OUTPUT ACCEPT [0:0]
-A FORWARD -i "$EXTIF" -o "$INTIF" -m conntrack --ctstate ESTABLISHED,RELATED -j ACCEPT
-A FORWARD -i "$INTIF" -o "$EXTIF" -j ACCEPT
-A FORWARD -j LOG
COMMIT
답변1
나는 그것이 테이블 이름의 선택자라고 믿습니다. 명령의 명령줄 변형에 대한 옵션 *
대신 테이블을 선택하는 데 사용됩니다 . -t
예를 들어, 일반적으로 를 지정하여 테이블을 선택하지만 -t <tablename>
이 경우에는 -t nat
을 선택합니다.낫테이블:
iptables -t nat -A POSTROUTING -o eth1 -j MASQUERADE
제공한 예는 다음에서 입력 리디렉션을 사용하는 것입니다.여기 문서to iptables-restore
- <<EOF ... EOF
및 명령줄 옵션( -t
) 대신 다음과 같이 개별 줄이 대신 사용됩니다.
iptables-restore <<-EOF
*nat
-A POSTROUTING -o "$EXTIF" -j MASQUERADE
COMMIT
EOF
-A
여기 문서에는 여전히 있지만 왜 그렇지 않다고 주장할 수 있습니까 -t
? 나는 그것에 대한 대답을 모릅니다. 다른 사람이 알기를 바랍니다.
마찬가지로 테이블이 편집 *nat
된 후 테이블이 선택되고 작업된 다음 편집됩니다.COMMIT
*filter
COMMIT
iptables-restore <<-EOF
*filter
:INPUT ACCEPT [0:0]
:FORWARD DROP [0:0]
:OUTPUT ACCEPT [0:0]
-A FORWARD -i "$EXTIF" -o "$INTIF" -m conntrack --ctstate ESTABLISHED,RELATED -j ACCEPT
-A FORWARD -i "$INTIF" -o "$EXTIF" -j ACCEPT
-A FORWARD -j LOG
COMMIT
EOF
튜토리얼을 찾고 있다면 이것을 찾을 수 있습니다.NAT - 네트워크 주소 변환튜토리얼이 유용합니다.