iptables: отключить NAT за исключением только одного клиента

У меня есть подсеть LTSP (192.168.0.0/24) и я хочу отключить NAT для каждого клиента, кроме одного клиента

Цель состоит в том, чтобы запретить (по требованию) доступ к Интернету от студентов-студентов, но всегда разрешать его от уникального клиента-преподавателя.

IP-адрес клиента, используемый учителем, всегда один и тот же: 192.168.0.253

Подсеть LTSP подключена к eth1, а интернет - из eth0 (этот сетевой адаптер подключен к маршрутизатору, расположенному между локальной сетью: 10.0.0.0/8 и школьной магистралью WAN: 172.16.0.0/12).

В моем дистрибутиве (debian-edu) есть скрипт /etc/init.d с именем enable-nat, который я бы использовал для этой цели.

В основном он использует две функции:

Когда услуга СТАРТ:

do_start()
{
  /sbin/iptables -t nat -A POSTROUTING -s $NETWORK_TO_NAT -o $OUTSIDE_IF -j MASQUERADE
}

Когда служба СТОП:

do_stop()  
{  
   /sbin/iptables -F -t nat
}

Было интересно, как я могу реализовать то, что я хочу, используя этот скрипт.

заранее спасибо

1 ответ

Просто замени $NETWORK_TO_NAT с IP-адресом клиента вы хотите NAT.

Другие вопросы по тегам