Iptables는 모든 형식의 모든 IP 또는 범위를 허용합니다.

Iptables는 모든 형식의 모든 IP 또는 범위를 허용합니다.

6월 30일 업데이트 ips.txt 목록이 있고 iptables가 모든 형식의 모든 IP 또는 범위를 허용하도록 하고 싶습니다. 예:

# IPs List
199.59.243.120
157.60.1.0/24
91.190.0.0/16
192.168.2.1-192.168.2.25

내 규칙:

for ip in $(sed '/#.*/d' ips.txt); do
   if echo $ip | grep -q "-" >/dev/null; then
     iptables -w -A FORWARD -i eth1 -p tcp --dport 80 -m iprange --dst-range "$ip" -j ACCEPT
   else
     iptables -w -A FORWARD -i eth1 -p tcp --dport 80 -d $ip -j ACCEPT
   fi
done

iptables는 ip 199.59.243.120 및 범위 192.168.2.1-192.168.2.25를 허용하지만 iptables가 157.60.1.0/24 또는 91.190.0.0/16 범위를 허용하도록 만드는 방법은 무엇입니까? ? ?

감사해요

답변1

iptables -dCIDR 표기법의 네트워크가 허용되므로 지정된 검색 범위를 사용하도록 변경한 다음 grep명령 -을 바꾸거나 grep 결과를 무효화할 수 있습니다.

답변2

157.60.1.0/24는 -d 157.60.1.0/24 -j Accept와 같은 다른 조건에 있습니다. 오류에 표시된 것처럼 첫 번째 조건 --dst-range에 맞지 않습니다. 따라서 명령은 echo $ ip l grep -q "-" 입니다.

관련 정보