понедельник, 26 декабря 2016 г.

TR069. Профайл Eltex NTP-RG-1402G-W

Довольно давно ничего не писал. Причиной всему, как обычно, нехватка времени. Очень истосковался по консоли, поэтому в скором времени планирую расчехлять лабу по MPLS. Прям со всем в скором, на этой или следующей неделе я уже смогу написать заветный "conf t". Остановились мы там на самом вкусном - RSVP-TE. Помню, что я там наступил на какие-то веселые грабли... Но сейчас не об этом.

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

Посчастливилось мне поработать с русским вендором Eltex и его оборудование для GPON. В принципе, я доволен. Не без проблем на старте, конечно, но работает... В этом посте опубликую завалявшийся у меня профайл для базовой настройки абонентского терминала Eltex NTP-RG-1402G-W через протокол TR069. Более подробный гайд с картинками внутреннего мира NTP-RG-1402G-W можно найти на сайте производителя. Вдруг кому-то будет полезно...
Этот профайл настраивает NTP-RG-1402G-W как типичный абонентский роутер. Локальный интерфейс имеет адрес 192.168.1.1/24. На нем включен DHCP и DNS сервера. Все 4 физических Ethernet-порта объединены в один бридж. Включен один телефонный порт и настроен VoIP-шлюз, голосовой трафик бегает в 10 VLANe. Роутер получает адрес через PPPoE в 330 VLANe. Интерфейс управления настроен на получение адреса через DHCP. Через него прописана пара маршрутов для управления.

Создать виртуальный интерфейс LanDevice1, который будет смотреть в локальную сеть клиента, включить DHCP-сервер на нем, DNS-сервер, присвоить адрес и пул адресов под DHCP.
"InternetGatewayDevice.LANDevice.1.LANHostConfigManagement.DHCPServerEnable" "true"
"InternetGatewayDevice.LANDevice.1.LANHostConfigManagement.DNSServers" "192.168.1.1"
"InternetGatewayDevice.LANDevice.1.LANHostConfigManagement.IPInterface.1.Enable" "true"
"InternetGatewayDevice.LANDevice.1.LANHostConfigManagement.IPInterface.1.IPInterfaceIPAddress" "192.168.1.1"
"InternetGatewayDevice.LANDevice.1.LANHostConfigManagement.IPRouters" "192.168.1.1"
"InternetGatewayDevice.LANDevice.1.LANHostConfigManagement.MaxAddress" "192.168.1.254"
"InternetGatewayDevice.LANDevice.1.LANHostConfigManagement.MinAddress" "192.168.1.2"

Разрешить виртуальные интерфейсы вообще. Без этого работать не будет.
"InternetGatewayDevice.LANDevice.1.WLANConfiguration.1.Enable" "TRUE"

Выключить IGMP Snooping на LanDevice1
"InternetGatewayDevice.LANDevice.1.X_BROADCOM_COM_IgmpSnoopingConfig.Enable" "false"

Создать виртуальный интерфейс LanInterface2, настроить получение DHCP-адреса
"InternetGatewayDevice.LANDevice.2.LANHostConfigManagement.IPInterface.1.Enable" "TRUE"
"InternetGatewayDevice.LANDevice.2.LANHostConfigManagement.IPInterface.1.IPInterfaceAddressingType" "DHCP"

Создать дефолтный бридж. Обязательно.
"InternetGatewayDevice.Layer2Bridging.Bridge.1.BridgeEnable" "true"
"InternetGatewayDevice.Layer2Bridging.Bridge.1.BridgeName" "Default"

Создать второй бридж для VoIP.
"InternetGatewayDevice.Layer2Bridging.Bridge.2.BridgeEnable" "true"
"InternetGatewayDevice.Layer2Bridging.Bridge.2.BridgeName" "VoIP"

Создать связь (filter), которая объединяет eth0 с br0 (создавался ранее как дефолтный)
"InternetGatewayDevice.Layer2Bridging.Filter.1.FilterBridgeReference" "0"
"InternetGatewayDevice.Layer2Bridging.Filter.1.FilterEnable" "true"
"InternetGatewayDevice.Layer2Bridging.Filter.1.FilterInterfaceName" "eth0"

Создать фильтр, который связывает ppp0.1 с br0 (создавался ранее как дефолтный)
"InternetGatewayDevice.Layer2Bridging.Filter.10.FilterBridgeReference" "0"
"InternetGatewayDevice.Layer2Bridging.Filter.10.FilterEnable" "TRUE"
"InternetGatewayDevice.Layer2Bridging.Filter.10.FilterInterfaceName" "ppp0.1"

Создать фильтр, который связывает veip1.1 с br0 (создавался ранее как дефолтный)
"InternetGatewayDevice.Layer2Bridging.Filter.11.FilterBridgeReference" "1"
"InternetGatewayDevice.Layer2Bridging.Filter.11.FilterEnable" "true"
"InternetGatewayDevice.Layer2Bridging.Filter.11.FilterInterfaceName" "veip1.1"

Создать фильтр, который связывает eth1 с br0 (создавался ранее как дефолтный)
"InternetGatewayDevice.Layer2Bridging.Filter.2.FilterBridgeReference" "0"
"InternetGatewayDevice.Layer2Bridging.Filter.2.FilterEnable" "TRUE"
"InternetGatewayDevice.Layer2Bridging.Filter.2.FilterInterfaceName" "eth1"

Создать фильтр, который связывает eth2 с br0 (создавался ранее как дефолтный)
"InternetGatewayDevice.Layer2Bridging.Filter.3.FilterBridgeReference" "0"
"InternetGatewayDevice.Layer2Bridging.Filter.3.FilterEnable" "TRUE"
"InternetGatewayDevice.Layer2Bridging.Filter.3.FilterInterfaceName" "eth2"

Создать фильтр, который связывает eth3 с br0 (создавался ранее как дефолтный)
"InternetGatewayDevice.Layer2Bridging.Filter.4.FilterBridgeReference" "0"
"InternetGatewayDevice.Layer2Bridging.Filter.4.FilterEnable" "TRUE"
"InternetGatewayDevice.Layer2Bridging.Filter.4.FilterInterfaceName" "eth3"

Создать фильтр, который связывает wl0 с br0 (создавался ранее как дефолтный)
"InternetGatewayDevice.Layer2Bridging.Filter.5.FilterBridgeReference" "0"
"InternetGatewayDevice.Layer2Bridging.Filter.5.FilterEnable" "TRUE"
"InternetGatewayDevice.Layer2Bridging.Filter.5.FilterInterfaceName" "wl0"

Создать фильтр для виртуальных сабинтерфейсов w0.1, w0.2, w0.3, но не привязывать их в бриджу. Обязательно.
"InternetGatewayDevice.Layer2Bridging.Filter.6.FilterEnable" "TRUE"
"InternetGatewayDevice.Layer2Bridging.Filter.6.FilterInterfaceName" "wl0.1"
"InternetGatewayDevice.Layer2Bridging.Filter.7.FilterEnable" "TRUE"
"InternetGatewayDevice.Layer2Bridging.Filter.7.FilterInterfaceName" "wl0.2"
"InternetGatewayDevice.Layer2Bridging.Filter.8.FilterEnable" "TRUE"
"InternetGatewayDevice.Layer2Bridging.Filter.8.FilterInterfaceName" "wl0.3"

Создать фильтр, который связывает veip4.1 с br0. Обязательно для управления.
"InternetGatewayDevice.Layer2Bridging.Filter.9.FilterBridgeReference" "0"
"InternetGatewayDevice.Layer2Bridging.Filter.9.FilterEnable" "TRUE"
"InternetGatewayDevice.Layer2Bridging.Filter.9.FilterInterfaceName" "veip4.1"

Создать маршрут до 10.20.30.0/24 через 10.10.0.254 veip4.1
"InternetGatewayDevice.Layer3Forwarding.Forwarding.4.DestIPAddress" "10.20.30.0"
"InternetGatewayDevice.Layer3Forwarding.Forwarding.4.DestSubnetMask" "255.255.255.0"
"InternetGatewayDevice.Layer3Forwarding.Forwarding.4.Enable" "1"
"InternetGatewayDevice.Layer3Forwarding.Forwarding.4.GatewayIPAddress" "10.10.0.254"
"InternetGatewayDevice.Layer3Forwarding.Forwarding.4.Interface" "veip4.1"

Создать маршрут до 172.30.0.1/32 через 10.10.0.254 veip4.1
"InternetGatewayDevice.Layer3Forwarding.Forwarding.5.DestIPAddress" "172.30.0.1"
"InternetGatewayDevice.Layer3Forwarding.Forwarding.5.DestSubnetMask" "255.255.255.255"
"InternetGatewayDevice.Layer3Forwarding.Forwarding.5.Enable" "1"
"InternetGatewayDevice.Layer3Forwarding.Forwarding.5.GatewayIPAddress" "10.10.0.254"
"InternetGatewayDevice.Layer3Forwarding.Forwarding.5.Interface" "veip4.1"

PPPoE-интерфейс как WAN-интерфейс по-умолчанию
"InternetGatewayDevice.Layer3Forwarding.X_BROADCOM_COM_DefaultConnectionServices" "ppp0.1"

VOIP. Включить первый телефонный порт, назначить кодеки, установить диалпир, связать интерфейс с br1.
"InternetGatewayDevice.Services.VoiceService.1.VoiceProfile.1.DigitMap" "x.t"
"InternetGatewayDevice.Services.VoiceService.1.VoiceProfile.1.Enable" "Enabled"
"InternetGatewayDevice.Services.VoiceService.1.VoiceProfile.1.Line.1.Codec.List.1.Codec" "G.711MuLaw"
"InternetGatewayDevice.Services.VoiceService.1.VoiceProfile.1.Line.1.Codec.List.1.Priority" "2"
"InternetGatewayDevice.Services.VoiceService.1.VoiceProfile.1.Line.1.Codec.List.2.Codec" "G.711ALaw"
"InternetGatewayDevice.Services.VoiceService.1.VoiceProfile.1.Line.1.Codec.List.2.Priority" "1"
"InternetGatewayDevice.Services.VoiceService.1.VoiceProfile.1.Line.1.Codec.List.3.Enable" "0"
"InternetGatewayDevice.Services.VoiceService.1.VoiceProfile.1.Line.1.Codec.List.4.Enable" "0"
"InternetGatewayDevice.Services.VoiceService.1.VoiceProfile.1.Line.1.Codec.List.5.Enable" "0"
"InternetGatewayDevice.Services.VoiceService.1.VoiceProfile.1.Line.1.Codec.List.6.Enable" "0"
"InternetGatewayDevice.Services.VoiceService.1.VoiceProfile.1.Line.1.Enable" "Enabled"
"InternetGatewayDevice.Services.VoiceService.1.VoiceProfile.1.Region" "RU"
"InternetGatewayDevice.Services.VoiceService.1.X_BROADCOM_COM_BoundIfName" "br1"

Включить NTP, прописать сервер и временную зону.
"InternetGatewayDevice.Time.Enable" "1"
"InternetGatewayDevice.Time.LocalTimeZone" "03:00"
"InternetGatewayDevice.Time.LocalTimeZoneName" "Baghdad"
"InternetGatewayDevice.Time.NTPServer1" "10.10.0.1"
"InternetGatewayDevice.Time.NTPServer2" ""
"InternetGatewayDevice.Time.NTPServer3" ""
"InternetGatewayDevice.Time.NTPServer4" ""
"InternetGatewayDevice.Time.NTPServer5" ""

Протекторы. Обязательно. Защищают от перетирания в случае не совпадения железа.
"InternetGatewayDevice.WANDevice.-2.Ena" "0"
"InternetGatewayDevice.WANDevice.5.WANConnectionDevice.-2.Ena" "0"

Создать подинтерфейс veip0 c именем ppp0.1 как ip_riouted. Прописать VLAN 330. По нему будет бегать PPPoE трафик.
"InternetGatewayDevice.WANDevice.5.WANConnectionDevice.1.WANPPPConnection.1.ConnectionType" "IP_Routed"
"InternetGatewayDevice.WANDevice.5.WANConnectionDevice.1.WANPPPConnection.1.Enable" "true"
"InternetGatewayDevice.WANDevice.5.WANConnectionDevice.1.WANPPPConnection.1.Name" "veip0"
"InternetGatewayDevice.WANDevice.5.WANConnectionDevice.1.WANPPPConnection.1.NATEnabled" "true"
"InternetGatewayDevice.WANDevice.5.WANConnectionDevice.1.WANPPPConnection.1.X_BROADCOM_COM_ConnectionId" "1"
"InternetGatewayDevice.WANDevice.5.WANConnectionDevice.1.WANPPPConnection.1.X_BROADCOM_COM_FirewallEnabled" "true"
"InternetGatewayDevice.WANDevice.5.WANConnectionDevice.1.WANPPPConnection.1.X_BROADCOM_COM_IfName" "ppp0.1"
"InternetGatewayDevice.WANDevice.5.WANConnectionDevice.1.WANPPPConnection.1.X_BROADCOM_COM_VlanMux8021p" "0"
"InternetGatewayDevice.WANDevice.5.WANConnectionDevice.1.WANPPPConnection.1.X_BROADCOM_COM_VlanMuxID" "330"
"InternetGatewayDevice.WANDevice.5.WANConnectionDevice.1.WANPPPConnection.1.X_BROADCOM_COM_VlanQinQEnabled" "false"

Создать подинтерфейс veip1 c именем veip1.1 как ip_bridget. Прописать VLAN 10, разрешить DHCP.
"InternetGatewayDevice.WANDevice.5.WANConnectionDevice.2.WANIPConnection.1.AddressingType" "DHCP"
"InternetGatewayDevice.WANDevice.5.WANConnectionDevice.2.WANIPConnection.1.ConnectionType" "IP_Bridged"
"InternetGatewayDevice.WANDevice.5.WANConnectionDevice.2.WANIPConnection.1.Enable" "true"
"InternetGatewayDevice.WANDevice.5.WANConnectionDevice.2.WANIPConnection.1.Name" "veip1"
"InternetGatewayDevice.WANDevice.5.WANConnectionDevice.2.WANIPConnection.1.X_BROADCOM_COM_ConnectionId" "1"
"InternetGatewayDevice.WANDevice.5.WANConnectionDevice.2.WANIPConnection.1.X_BROADCOM_COM_IfName" "veip1.1"
"InternetGatewayDevice.WANDevice.5.WANConnectionDevice.2.WANIPConnection.1.X_BROADCOM_COM_VlanMux8021p" "0"
"InternetGatewayDevice.WANDevice.5.WANConnectionDevice.2.WANIPConnection.1.X_BROADCOM_COM_VlanMuxID" "10"

Включить WAN интерфейсы. Обязательно.
"InternetGatewayDevice.WANDevice.5.X_BROADCOM_COM_WANPonInterfaceConfig.Enable" "TRUE"

Включить виртуальные интерфейсы. Обязательно.
"InternetGatewayDevice.X_BROADCOM_COM_EthernetSwitch.EnableVirtualPorts" "TRUE"

Прописать пароль и имя пользователя для админа
"InternetGatewayDevice.X_BROADCOM_COM_LoginCfg.AdminPassword" "SuperPassword"
"InternetGatewayDevice.X_BROADCOM_COM_LoginCfg.AdminUserName" "admin"

Прописать пароль и имя пользователя для пользователя
"InternetGatewayDevice.X_BROADCOM_COM_LoginCfg.UserPassword" "user"
"InternetGatewayDevice.X_BROADCOM_COM_LoginCfg.UserUserName" "user"

Выбор интефейса для DNS резолва.
"InternetGatewayDevice.X_BROADCOM_COM_NetworkConfig.DNSIfName" "ppp0.1"

Включить локальный syslog
"InternetGatewayDevice.X_BROADCOM_COM_SyslogCfg.KernelDisplayLevel" "Error"
"InternetGatewayDevice.X_BROADCOM_COM_SyslogCfg.LocalDisplayLevel" "Error"
"InternetGatewayDevice.X_BROADCOM_COM_SyslogCfg.LocalLogLevel" "Informational"
"InternetGatewayDevice.X_BROADCOM_COM_SyslogCfg.Option" "local buffer"
"InternetGatewayDevice.X_BROADCOM_COM_SyslogCfg.Status" "Enabled"

Все это запихивается в профайл и скармливается CPE NTP-RG-1402G-W при поднятии TR069 сессии.

2 комментария:

  1. Я заметил что в профиле не передаются имя пользователя и пароль для PPPoE-соединения. Профиль в ACS получается общий для всех устройств, для которых он назначен, а как же задать логин и пароль для каждого конкретного устройства?

    ОтветитьУдалить
  2. Привет.
    Специфичные параметры (PPPoE логин и пароль, адрес VOIP шлюза, номера телефонов на портах...) задаются на каждый терминал отдельно. Я делал это через Eltex NMS. Эти настройки перетирают настройки пришедшие на терминалы через TR069.

    ОтветитьУдалить