Ваш телевизор показывает зарубежный каталог, а кнопка трансляции на телефоне больше его не перечисляет. Обе жалобы начинаются с одной фразы, которая называет четыре настройки на четырёх страницах роутера. Почините выход — и обнаружение ломается; почините обнаружение — и следующая аренда отдаёт выход другому устройству. Порядок ниже идёт от селектора к пути трансляции.

Где живёт каждое из четырёх решений

Запишите все четыре до открытия меню, потому что каждое живёт на отдельной странице и ломается в своём месте. Селектор выбирает, к какому клиенту применяется туннель, резолвер решает, где отвечают на имена, семейство адресов решает, охвачен ли IPv6 вообще, а локальный путь решает, видят ли телефон и телевизор друг друга по-прежнему. Изменение одного выглядит завершённым со страницы, на которой вы стоите. Ущерб от остальных трёх всплывает позже, в другом меню, как другая жалоба.

Меню прошивок различаются, но четыре места — редко. Селектор — это статическое сопоставление на DHCP-сервере плюс соответствующее правило брандмауэра. Резолвер находится рядом со службой DNS, где запись перенаправления или список вышестоящих серверов решает, на какие имена отвечает роутер и откуда уходят запросы. Настройка семейства принадлежит самому интерфейсу, где IPv4 и IPv6 настраиваются отдельно и политика может покрывать только первое. Локальный путь — это переключатель точки доступа: либо изоляция клиентов, либо гостевая сеть со своим брандмауэром.

Сделайте так, чтобы селектор пережил аренду

Работают и политика для каждого устройства, и отдельный сегмент, а лучший выбор — тот, который прошивка может поддерживать без памяти второго человека. Ловушка — правило, привязанное к адресу, который DHCP-сервер выдал по своему расписанию: оно работает, пока аренда не сдвинется, а затем направляет ноутбук через другую страну по причинам, которых владелец не видит. Устойчивость, а не аккуратность, — вот свойство, которое стоит оптимизировать.

Rule names the TV byAfter the next leaseWhat it costs
whatever address it has nowmay point at another clientsilent misrouting weeks later
a reserved addressholds, if the reservation ships with itone more entry to keep in step
a hardware addressholds, unless the device rotates itprivacy features can break it
a whole segmentholds for every device on itneighbours inherit the exit

Отправьте резервирование и правило как одно изменение, потому что правило, переживающее своё резервирование, нацелено на чужое оборудование. Правило для целого сегмента — самый долговечный и самый грубый селектор, так как каждое устройство за этим интерфейсом наследует выход, нужен он ему или нет. Какое бы правило вы ни выбрали, дальше идёт вопрос покрытия: политика только для IPv4 — половина решения, а непокрытое семейство — то, которое уходит незамеченным.

Выясните, какой резолвер телевизор действительно использует

Откройте собственные сетевые настройки телевизора, прежде чем трогать роутер, потому что этот спор решает устройство. Поле DNS, выставленное вручную, продолжает использовать тот сервер, что бы ни предлагал DHCP, а приставка, однажды настроенная на другой регион, может по-прежнему указывать на адрес, который уже не отвечает. Если поле автоматическое, решает опция DHCP роутера, и собственный резолвер роутера становится следующим вопросом. В любом случае ответ на экране устройства, а не в руководстве по прошивке.

На стороне роутера важное различие — между именами, на которые роутер отвечает сам, и именами, которые он пересылает, потому что эти два пути могут выходить через разные интерфейсы. Поэтому успешно разрешённый запрос ничего не говорит о том, куда идёт запрос медиа, а на шлюзе Linux таблица политик плюс один поиск маршрута отвечают на оба вопроса, ничего не перехватывая на телевизоре:

ip rule show
ip route get 203.0.113.10

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

Трансляция ломается на обнаружении, а не на потоке

Трансляция — это как минимум три разговора, и только один из них несёт видео. Телефон обнаруживает телевизор через multicast или broadcast в локальном сегменте, открывает канал управления, чтобы сказать, что воспроизводить, а затем телевизор либо сам забирает поток, либо получает его пересланным с телефона. Обнаружение никогда не пересекает роутер, который не пересылает этот трафик, и именно так телевизор может быть направлен ровно как задумано и всё же никогда не появиться в списке трансляции.

Гостевые сети и изоляция клиентов — обычная причина, и обе делают ровно то, для чего настроены. Отключение изоляции во всей беспроводной сети, чтобы одно устройство снова появилось, — обычная чрезмерная правка, и она снова открывает каждый путь телефон-в-телефон, который настройка должна была закрыть. Есть более узкие ответы: правило пропуска для трафика обнаружения и управления между двумя адресами, отдельный SSID для телевизоров или одно документированное исключение в гостевой сети.

Проверьте трансляцию, пока правило изоляции ещё на месте, затем добавьте только исключение обнаружения и проверьте снова. Если вторая попытка находит телевизор, исключение и есть решение, а остальная часть сегмента может остаться как была.

Остановите туннель и посмотрите, в какую сторону он ломается

Последняя проверка — та, которую пропускает большинство настроек: опустите туннель и посмотрите, остановится ли телевизор или тихо уйдёт через локальное подключение. Политика, выражающая предпочтение, ломается открыто, и этот отказ легко пропустить, потому что воспроизведение продолжается, пока выход возвращается к провайдеру. Правило kill-switch ломается, наоборот, закрыто, и телевизор ничего не сообщает, пока туннель не вернётся. Ни одно из двух поведений не неправильно; неправильно не знать, какое вы настроили.

После любого изменения проверьте четыре вещи в этом порядке. Селектор по-прежнему соответствует устройству после следующей аренды или перезагрузки. Резолвер отвечает на том пути, который задумывает политика, а не с сервера, который запомнило устройство. Семейство адресов в политике покрывает каждое семейство, которое телевизор и сеть доступа действительно используют. Трансляция по-прежнему находит телевизор с того телефона, который будет действительно использоваться, а не с тестового телефона в том же SSID.

Держите эти четыре строки рядом с конфигурацией роутера, а не в переписке: что сопоставляет правило, какой резолвер спрашивает телевизор, какое семейство покрыто и какой локальный путь нужен трансляции. Следующий человек, который откроет брандмауэр, прочитает конфигурацию намного раньше, чем тикет. К тому времени этим человеком можете быть вы.

Похожие статьи