Настройка команд сервера доступа для привязки IP к MAC на IPN тарифе — различия между версиями

Материал из ExpertBilling
Перейти к: навигация, поиск
 
Строка 1: Строка 1:
 +
Предварительно нужно добавить следующее правило на сервер доступа
 +
<pre>
 +
/ip firewall chain=forward action=accept src-address=1.1.1.1 dst-address=1.1.1.1 commant=placeholder
 +
</pre>
 +
Выше этого правила будут добавляться правила привязки IP+mac.
 +
 
Эти команды нужно прописать в команды управления сервером доступа(вторая закладка в окне настроек сервера доступа)
 
Эти команды нужно прописать в команды управления сервером доступа(вторая закладка в окне настроек сервера доступа)
  
 
[[Файл:ipn_actions.png]]
 
[[Файл:ipn_actions.png]]
  
Добавить субаккаунт:<pre>/ip firewall filter add chain=forward place-before=1 action=accept src-address=$subacc_ipn_ip_address src-mac-address=$subacc_ipn_mac_address comment=$subacc_id-out disabled=yes;/ip firewall filter add chain=forward place-before=1 action=accept dst-address=$subacc_ipn_ip_address comment=$subacc_id-in disabled=yes;</pre>
+
Добавить субаккаунт:<pre>/ip firewall filter add chain=forward place-before=[find comment=placeholder] action=accept src-address=$subacc_ipn_ip_address src-mac-address=$subacc_ipn_mac_address comment=$subacc_id-out disabled=yes;/ip firewall filter add chain=forward place-before=[find comment=placeholder] action=accept dst-address=$subacc_ipn_ip_address comment=$subacc_id-in disabled=yes;</pre>
  
 
Удалить субаккаунт:<pre>/ip firewall filter remove [find comment=$subacc_id-in];/ip firewall filter remove [find comment=$subacc_id-out];/queue simple remove [find comment=$acc_account_id-$subacc_id]</pre>
 
Удалить субаккаунт:<pre>/ip firewall filter remove [find comment=$subacc_id-in];/ip firewall filter remove [find comment=$subacc_id-out];/queue simple remove [find comment=$acc_account_id-$subacc_id]</pre>

Текущая версия на 12:06, 22 января 2012

Предварительно нужно добавить следующее правило на сервер доступа

/ip firewall chain=forward action=accept src-address=1.1.1.1 dst-address=1.1.1.1 commant=placeholder

Выше этого правила будут добавляться правила привязки IP+mac.

Эти команды нужно прописать в команды управления сервером доступа(вторая закладка в окне настроек сервера доступа)

Ipn actions.png

Добавить субаккаунт:
/ip firewall filter add chain=forward place-before=[find comment=placeholder] action=accept src-address=$subacc_ipn_ip_address src-mac-address=$subacc_ipn_mac_address comment=$subacc_id-out disabled=yes;/ip firewall filter add chain=forward place-before=[find comment=placeholder] action=accept dst-address=$subacc_ipn_ip_address comment=$subacc_id-in disabled=yes;
Удалить субаккаунт:
/ip firewall filter remove [find comment=$subacc_id-in];/ip firewall filter remove [find comment=$subacc_id-out];/queue simple remove [find comment=$acc_account_id-$subacc_id]
Включить субаккаунт:
/ip firewall filter set [find comment=$subacc_id-out] src-address=$subacc_ipn_ip_address src-mac-address=$subacc_ipn_mac_address disabled=no;/ip firewall filter set [find comment=$subacc_id-in] dst-address=$subacc_ipn_ip_address disabled=no
Отключить субаккаунт:
/ip firewall filter set [find comment=$subacc_id-out] src-address=$subacc_ipn_ip_address src-mac-address=$subacc_ipn_mac_address disabled=yes;/ip firewall filter set [find comment=$subacc_id-in] dst-address=$subacc_ipn_ip_address disabled=yes
Установить скорость для VPN:
/queue simple set [find interface=<$access_type-$subacc_username>] max-limit=$max_limit_tx/$max_limit_rx burst-limit=$burst_limit_tx/$burst_limit_rx burst-threshold=$burst_treshold_tx/$burst_treshold_rx burst-time=$burst_time_tx/$burst_time_rx priority=$priority limit-at=$min_limit_tx/$min_limit_rx
Установить скорость для IPN субаккаунта:
/queue simple remove [find name=$acc_account_id-$subacc_id]; /queue simple add name=$acc_account_id-$subacc_id max-limit=$max_limit_tx/$max_limit_rx burst-limit=$burst_limit_tx/$burst_limit_rx burst-threshold=$burst_treshold_tx/$burst_treshold_rx burst-time=$burst_time_tx/$burst_time_rx priority=$priority limit-at=$min_limit_tx/$min_limit_rx target-addresses=$subacc_ipn_ip_address/32
Сбросить VPN сессию:
/interface $access_type-server remove [find user=$subacc_username]

Показанный набор команд только управляет правилами форвардинга пакетов и настройками очередей. Если у вас на сервере предусмотрен NAT для клиентов, то возможно 2 варианта действий:

  • Вы разрешаете NAT всей вашей IP сети(те, кого нет в правилах файервола всё равно не пройдут);
  • К правилам добавления/удаления/включения/отключения субаккаунта нужно добавить команду добавления/удаления/включения/выключения IP адреса абонента в адрес-листе и создать на маршутизаторе NAT правило, разрешающее NAT указанному адрес-листу.

Второй вариант более правильный.