Страница 1 из 1

Выключение интерфейса при отключении определённого МАС адреса

Добавлено: 30 янв 2018, 03:50
b1gst0ne
Доброго времени суток.
Есть RouterBOARD 952Ui-5ac2nD, интересует как реализовать включение/отключение интерфейса подключения интернета при подключении/отключении определённого МАС адреса?
т.е. когда я ухожу из дома унося мой телефон, который подключён по WIFI, нужно чтобы интернет на роутере отключался, а когда я возвращался и мой телефон переподключался к сети WIFI интернет снова появлялся на роутере.
Я думал сделать IP для MAC адреса статичным и через Netwatch пинговать его, но думал, что есть более простой и "штатный" способ реализовать задуманное.

Re: Выключение интерфейса при отключении определённого МАС адреса

Добавлено: 30 янв 2018, 08:52
Chupaka
Доброго.

Скриптов на события WiFi я в RouterOS не вижу, поэтому самый очевидный вариант - статика DHCP и Netwatch.

Re: Выключение интерфейса при отключении определённого МАС адреса

Добавлено: 30 янв 2018, 09:49
b1gst0ne
Можно попробовать найти MAC так:
/interface wireless registration-table find mac-address
Но есть проблема в современных телефонах, они в режиме ожидания отключаются от wifi для экономии заряда АКБ.

Для включения интерфейса будет достаточно факта регистрации в сети wifi. Помогите найти или придумать событие/условие для отключения интерфейса, чтобы не пришлось находясь фактически дома, но не пользуясь телефоном некоторое время, ловить обрывы интернета и судорожно тянуться к телефону для пробуждения и регистрации его в сети wifi.

Re: Выключение интерфейса при отключении определённого МАС адреса

Добавлено: 30 янв 2018, 10:03
Chupaka
Предлагаю использовать DHCP для этого, скрипт lease-script в DHCP-сервере.

Что-то типа

Код: Выделить всё

if ($leaseActMAC = "МАК-адрес телефона") do={
	if ($leaseBound = 1) do={
		#включаем Интернет
		/interface enable pppoe-out1
	} else={
		#выключаем Интернет
		/interface disable pppoe-out1
	}
}
Лиза будет удаляться лишь по истечении lease-time, а не сразу после отключения от вайфая - и тогда же будет отключаться Интернет.

Re: Выключение интерфейса при отключении определённого МАС адреса

Добавлено: 30 янв 2018, 12:17
b1gst0ne
Спасибо за помощь,
Я не силён в синтаксисе скриптов, а как добавить несколько MAC адресов?

Re: Выключение интерфейса при отключении определённого МАС адреса

Добавлено: 30 янв 2018, 13:15
Chupaka
И выключать, пока хоть один висит в лизах? Это сложнее, тут логика должна быть другая: при истечении лизы проверять, есть ли кто ещё живой...

Re: Выключение интерфейса при отключении определённого МАС адреса

Добавлено: 30 янв 2018, 15:03
Chupaka
Что-то типа

Код: Выделить всё

if ($leaseActMAC = "МАК-адрес телефона1" or $leaseActMAC = "МАК-адрес телефона2" or $leaseActMAC = "МАК-адрес телефона3") do={
	if ($leaseBound = 1) do={
		#включаем Интернет
		/interface enable pppoe-out1
	} else={
		#проверяем и выключаем Интернет
		if ([:len [/ip dhcp-server lease find status="bound" mac-address="МАК-адрес телефона1" ]] = 0 and
			[:len [/ip dhcp-server lease find status="bound" mac-address="МАК-адрес телефона2" ]] = 0 and
			[:len [/ip dhcp-server lease find status="bound" mac-address="МАК-адрес телефона3" ]] = 0) do={
			/interface disable pppoe-out1
		}
	}
}

Re: Выключение интерфейса при отключении определённого МАС адреса

Добавлено: 03 фев 2018, 21:30
kardash
Вопрос с выключением решается просто.... Как включить назад? Отошёл покурить на улицу или в сортир и он выключился..... Включить только ручками? Так и выключить можно тогда ручками.... :-) Надо наверное смену профиля с паролем и заменой SSID делать?

Re: Выключение интерфейса при отключении определённого МАС адреса

Добавлено: 05 фев 2018, 15:25
Chupaka
Вернулся, телефон подключился, получил адрес - и вуаля, Интернет опять включился скриптом. В чём проблема-то? :)