
eth0과 eth1이라는 두 개의 인터페이스가 있는 VM이 있습니다. eth0에서 들어오는 패킷을 처리하고 규칙과 일치하지 않으면 삭제되기를 바랍니다. 규칙과 일치하면 수정 없이 eth1로 전달되기를 원합니다. 즉, 전달되는 패킷의 소스 및 대상 IP는 eth0에 입력할 때와 동일하게 유지되어야 합니다. 이 모든 과정에 iptables를 사용하려고 생각하고 있었는데, 패킷을 수정하지 않고 전달하는 부분은 불가능하다는 생각이 들기 시작했습니다. 누구든지 이것을 확인할 수 있습니까?
답변1
할 수 있게 하다라우팅리눅스에서:
IPv4
/proc/sys/net/ipv4/conf/all/forwarding
IPv6
echo 1 > /proc/sys/net/ipv6/conf/all/forwarding
전역적으로 구성하는 대신 네트워크 어댑터별로 이를 구성할 수도 있습니다( all
네트워크 어댑터 이름으로 대체). 이 변경 사항은 재부팅 후에도 지속되지 않습니다. 부팅 시 이를 적용하려면 에서 구성할 수 있습니다 /etc/sysctl.conf
.
당신도 알아두어야 할 것rp_filter
매개변수(역방향 경로 필터링).
IP 전달이 활성화되면 iptables(및 ip6tables) FORWARD
체인에 규칙을 추가하여 전달된 패킷을 필터링할 수 있습니다.