Skip to content
ZdanowskiS edited this page Jul 6, 2022 · 10 revisions

Welcome to the LightCsv-Genieacs wiki!

LightCsv-GenieACS pozwala przechowywać parametry konfiguracji CPE oraz w ograniczonym zakresie kontrolować urządzenia. Pełna funkcjonalność wymaga instalacja SMART-ów.

Głównym celem LightCSV jest pokazanie działającego przykładu integracji GenieACS. Tym samym ułatwiając integrację dowolnego istniejącego rozwiązania z GenieACS. Z tego też powodu LightCSV nieużywa żadnego frameworka. Konstrukcja rozwiązania jest tak minimalistyczna jak to mozliwe dla realizacji założeń projektu.

Jednocześnie LightCSV może być używany jako część produkcyjnego systemu. Dla konfiguracji które mogą być wykonywane w jednym etapie, powinno to być rozwiązanie wystarczające. Dodatkowo daje możliwości testowania wybranych funkcjonalności nowych modelów CPE.

Zanim przydatny będzie LightCSV lub inne analogiczne rozwiazanie konieczne jest uruchomienie DHCP, Genieacs i zrozumienie jak skonfigurować posiadane urządzenia. LightCSV zamyka łańcych narzędzi potrzebnych do automatycznej konfiguracji CPE z wykorzystaniem protokołu TR-069.

DHCP

Nie każdy serwer dhcp obsługuje opcję 43. Dostępny na Linuxie isc-dhcp-server pozwala na konfigurację wybranych opcji. Wymagane parametry mogą się zmieniać zależnie od modelu. Dla wielu modelów możliwe jest definiowanie klas identyfikowanych po fragmencie adresu MAC.

option space tr069;
option tr069.acs-enable code 1 = text;
option tr069.acs-server-url code 2 = text;
option tr069.acs-login code 3 = text;
option tr069.acs-password code 4 = text;
option tr069.acs-periodicinforminterval code 5 = text; 
option dhcp-parameter-request-list = concat(option dhcp-parameter-request-list,2b);

subnet 192.2.1.0 netmask 255.255.255.0 {
	range 192.2.1.10 192.2.1.140;
	option routers 192.2.1.2;
	vendor-option-space tr069;
	option tr069.acs-login "login";
	option tr069.acs-password "pass123";
	option tr069.acs-server-url "http://192.2.1.2:7547/";
}

Zakładając że login i hasło pokrywają się z danymi w GenieACS. Powyższa konfiguracja powinna umożliwić komunikację dla modelów niewymagających dodania "acs-enable".

GenieACS

Instrukcja instalacji GenieACS dostępna jest na stronach projektu.

Urządzenie po otrzymaniu opcji 43 DHCP zgłosi sie do ACS z eventem 0 Bootstrap. Preset może uruchomić provisioning dla konkretnego urządzniea na bazie SN. Jednak przy większej ilości urządzeń utrzymywanie konfiguracji per urządzenie w formie provisioningu stanie się nieporęczne. Provisioningi może przekazywać dane do skryptów rozszerzających, następnie konfigurować CPE na bazie odpowiedzi. W przypadku bardziej złożonych konfiguracji konieczne jest ich wykonywanie w etapach. Jednolity sposób przechowywania danych w LightCsv nie daje takich możliwości.

GMS z podziałem konfiguracji na akcje, daje możliwość ustawiania urządzenia w etapach.

Provisioning

Skrypty te moga działać na CPE i wywoływać rozszerzenia. Nie mogą jednak bezpośrednio łączyć się ze światem zewnętrznym. W przypadku LightCSV, dla nieskonfigurowanego urządzenia skrypt wywoła rozszerzenie i wykona otrzymane polecenia.

Extensions

Skrypty te służą do komunikacji z innymi systemami. W przypadku LightCSV provisioning prekazuje SN i device id do skryptu get_fileconfig. Z kolei skrypt rozszerający łączy się z LightCSV pod wskazanym adresem. W tym przypadku na porcie 80 bez użycia SSL. W odpowiedzi LightCSV przekazuje listę poleceń jaka zostanie wykoanana przez provisioning

LightCSV-Genieacs

LightCSV stanowi ostatni element łańcucha narzędzi do konfiguracji CPE. Dzięki API nie tylko przechowuje dane ale też pozwala je zmieniać z użyciem innych narzędzi.

Urządzenia kompatybilne z TR-069

Szukając urządzeń kompatybilnych z tym rozwiązaniem, można kontaktować się z: ziemowitm@icloud.com.

Wsparcie we wdrożeniach: sylwesterzdanowski@gmail.com

Clone this wiki locally