Всем привет! Нужна помощь с NAT-замаскированием между VLAN. У меня оборудование UniFi USG-3P, несколько Unifi-Switch, CloudKey Gen2+ и два UniFi AP. Я разделил свою сеть LAN/WLAN на несколько VLAN (Management, Intranet, IoT-устройства, Guests), и всё работает хорошо (кроме колонок BOSE SoundTouch...).
Сети/VLAN:
192.168.1.0/24 — Management VLAN 1 (native), USG eth1
192.168.10.0/24 — Intranet устройства, компьютеры и смартфоны/планшеты, VLAN 10 (tagged), USG eth1.10
192.168.20.0/24 — IoT и SoundTouch устройства, VLAN 20 (tagged), USG eth1.20
192.168.99.0/24 — Гостевая сеть, VLAN 99 (tagged), USG eth1.99
Чтобы обеспечить работу mDNS и multicast-прокси между IoT-клиентами и устройствами, я включил mDNS-repeater на eth1.10 и eth1.20, а также включил IGMP-Proxy. Всё работает нормально — Philips Hue, tado и другие сервисы доступны (кроме BOSE).
Вот моя текущая конфигурация config.gateway.json с включёнными mDNS-repeater и igmp-proxy:
{
"service": {
"mdns": {
"repeater": {
"interface": [
"eth1.10",
"eth1.20"
]
}
}
},
"protocols": {
"igmp-proxy": {
"interface": {
"eth1.10": {
"role": "upstream",
"threshold": "1"
},
"eth1.20": {
"role": "downstream",
"threshold": "1"
},
"eth0": {
"role": "disabled"
},
"eth1": {
"role": "disabled"
},
"eth1.99": {
"role": "disabled"
}
}
}
}
}
Однако я не могу заставить приложение BOSE SoundTouch работать — оно отказывается видеть колонки в IoT-VLAN. (Если подключиться к IoT-VLAN со смартфона с приложением — всё работает отлично.)
Сначала я думал, что дело в IGMP-Proxy, но тестирование с PIMD тоже не помогло. Для тестов разрешены все соединения между 192.168.10.0/24 и 192.168.20.0/24 в обоих направлениях (позже планирую закрыть только нужные порты и протоколы).
Покопавшись в интернете, нашёл несколько сообщений, что BOSE как-то в 2018 году поменяли поведение своей прошивки, и теперь колонки отвечают только клиентам из той же подсети — «по соображениям безопасности». Думаю, что это можно обойти, если замаскировать клиентов из VLAN 10 под адрес шлюза VLAN 20 (192.168.20.1) через NAT. Но как это настроить для нескольких клиентов в VLAN 10?
IP BOSE SoundTouch на VLAN 20 / eth1.20:
192.168.20.30
192.168.20.31
192.168.20.32
192.168.20.33
192.168.20.34
192.168.20.35
192.168.20.36
Клиенты с приложением SoundTouch на VLAN 10 / eth1.10:
192.168.10.50
192.168.10.60
192.168.10.62
192.168.10.63
192.168.10.65
192.168.10.66
Как расширить мой config.gateway.json, чтобы замаскировать только этих 6 клиентов для 7 колонок?
Буду очень признателен за помощь и с радостью отдам Kudos 😉
Сети/VLAN:
192.168.1.0/24 — Management VLAN 1 (native), USG eth1
192.168.10.0/24 — Intranet устройства, компьютеры и смартфоны/планшеты, VLAN 10 (tagged), USG eth1.10
192.168.20.0/24 — IoT и SoundTouch устройства, VLAN 20 (tagged), USG eth1.20
192.168.99.0/24 — Гостевая сеть, VLAN 99 (tagged), USG eth1.99
Чтобы обеспечить работу mDNS и multicast-прокси между IoT-клиентами и устройствами, я включил mDNS-repeater на eth1.10 и eth1.20, а также включил IGMP-Proxy. Всё работает нормально — Philips Hue, tado и другие сервисы доступны (кроме BOSE).
Вот моя текущая конфигурация config.gateway.json с включёнными mDNS-repeater и igmp-proxy:
{
"service": {
"mdns": {
"repeater": {
"interface": [
"eth1.10",
"eth1.20"
]
}
}
},
"protocols": {
"igmp-proxy": {
"interface": {
"eth1.10": {
"role": "upstream",
"threshold": "1"
},
"eth1.20": {
"role": "downstream",
"threshold": "1"
},
"eth0": {
"role": "disabled"
},
"eth1": {
"role": "disabled"
},
"eth1.99": {
"role": "disabled"
}
}
}
}
}
Однако я не могу заставить приложение BOSE SoundTouch работать — оно отказывается видеть колонки в IoT-VLAN. (Если подключиться к IoT-VLAN со смартфона с приложением — всё работает отлично.)
Сначала я думал, что дело в IGMP-Proxy, но тестирование с PIMD тоже не помогло. Для тестов разрешены все соединения между 192.168.10.0/24 и 192.168.20.0/24 в обоих направлениях (позже планирую закрыть только нужные порты и протоколы).
Покопавшись в интернете, нашёл несколько сообщений, что BOSE как-то в 2018 году поменяли поведение своей прошивки, и теперь колонки отвечают только клиентам из той же подсети — «по соображениям безопасности». Думаю, что это можно обойти, если замаскировать клиентов из VLAN 10 под адрес шлюза VLAN 20 (192.168.20.1) через NAT. Но как это настроить для нескольких клиентов в VLAN 10?
IP BOSE SoundTouch на VLAN 20 / eth1.20:
192.168.20.30
192.168.20.31
192.168.20.32
192.168.20.33
192.168.20.34
192.168.20.35
192.168.20.36
Клиенты с приложением SoundTouch на VLAN 10 / eth1.10:
192.168.10.50
192.168.10.60
192.168.10.62
192.168.10.63
192.168.10.65
192.168.10.66
Как расширить мой config.gateway.json, чтобы замаскировать только этих 6 клиентов для 7 колонок?
Буду очень признателен за помощь и с радостью отдам Kudos 😉
