1 (edytowany przez Cezary 2019-09-18 19:46:44)

Temat: [mało znane pakiety] travelmate

W repozytorium OpenWrt można znaleźć się setki pakietów. Niektóre są mało znane, choć realizują ciekawe funkcje. Jednym z nich jest travelmate.
Zapewne większość z nas gdzieś podróżuje. Dalej, bliżej, na wakacje, na weekend do rodziny, w podróż służbową. Zostajemy na noc u znajomych lub w hotelu, czasami te same miejsca odwiedzamy kilka razy. W obecnych czasach zwykle jest dostępne jakieś wifi do którego możemy się podłączyć, ale jeżeli korzystamy ze swojego routera i mamy za każdym razem go rekonfigurować do nowej sieci to zaczyna się to robić lekko uciążliwe.
W takim przypadku przychodzi z pomocą pakiet travelmate oraz odpowiednia aplikacja dla luci -  luci-app-travelmate.
Pakiet ten ma wiele zalet:
- można zapamiętać wiele sieci bezprzewodowych
- można ustalić kolejność w jakiej ma się łączyć
- sam wykrywa sieci i łączy się do odpowiedniej
- sam nadzoruje jakość połączenia i łączy się do innej w razie potrzeby
- robi to dobrze - jeżeli klient się nie połączył to nie wyłącza automatycznie trybu ap tak jak zwykle robią to sterowniki
- oraz jeszcze parę innych rzeczy które sprawiają że ten pakiet będzie przydatny w podróży

Instalacja
# opkg update
# opkg install travelmate luci-app-travelmate
Konfiguracja w LuCI

Zakładając że zrobiliśmy to na czystym openwrt to należy na początek kliknąć parę rzeczy:
- włączyć wifi i ustawić swoją nazwę/zabezpieczenia
Robi się to w "Sieć" -> "Sieć bezprzewodowa", należy zrobić edycję, ustawić zabezpieczenia, hasło, nazwę i na koniec kliknąć "Włącz"
https://i.postimg.cc/pdpYnB3M/a.png

- utworzyć konfigurację travelmate. Wchodzimy w "Serwisy" -> "Travelmate", klikamy "Zapisz i zastosuj"

https://i.postimg.cc/cHVSNXGx/a.png

- będąc nadal w "Serwisy" -> "Travelmate" wchodzimy do zakładki "Wireless station", klikamy "Skanuj radio" i dodajemy sobie istniejącą sieć. Jeżeli chcemy dodać inne, to wybieramy pierwszą lepszą z listy, zmieniamy nazwę, podajemy resztę danych i zapisujemy. W ten sposób będąc w nowym miejscu możemy dodać nową sieć lub wcześniej będąc np. w domu przygotować listę do których będziemy się łączyć. Ustalamy też kolejność w jakiej sieci są na liście.

https://i.postimg.cc/L4NtvwRF/a.png

- przechodzimy znów do zakładki "Przegląd", zaznaczamy "Enable travelmate" i zapisujemy zmiany

https://i.postimg.cc/K8n4p3L3/a.png

Od tego momentu pakiet będzie samodzielnie skanował i łączyć się do zdefiniowanych sieci, zgodnie z kryteriami ustawionymi przez nas.

Konfiguracja w konsoli

Oczywiście nie każdy używa LuCI. Pakiet można skonfigurować także z konsoli. Należy zrobić to w następujący sposób (pokazano tylko dodatkową zawartość plików, nie cały plik konfiguracyjny!)
- /etc/config/wireless. Tworzymy nowe sekcje dla każdej sieci bezprzewodowej w takiej kolejności w jakiej ma się łączyć pakiet. Dla w/w zestawu wyglądało to tak:

config wifi-iface
    option network 'trm_wwan'
    option disabled '1'
    option device 'radio0'
    option mode 'sta'
    option ssid 'UPC0838351'
    option encryption 'psk2'

config wifi-iface
    option network 'trm_wwan'
    option device 'radio0'
    option mode 'sta'
    option ssid '2.4G-Vectra-WiFi-1868B6'
    option encryption 'psk-mixed'
    option disabled '1'

config wifi-iface
    option network 'trm_wwan'
    option disabled '1'
    option device 'radio0'
    option mode 'sta'
    option ssid 'UPC4D66674'
    option encryption 'psk-mixed'

config wifi-iface
    option network 'trm_wwan'
    option disabled '1'
    option device 'radio0'
    option mode 'sta'
    option ssid 'UPC Wi-Free'
    option encryption 'wpa2'
    option eap_type 'peap'
    option auth 'EAP-MSCHAPV2'

Każda sieć jest wyłączona i tak należy ją podać, pakiet sam ją włączy w razie potrzeby. Każda jest w trybie sta, przydzielona do sieci "trm_wwan". Oczywiście należy podać też hasła do sieci...
- /etc/config/network. Tu po prostu dodajemy sieć o nazwie "trm_wwan" na protokole dhcp:

config interface 'trm_wwan'
    option proto 'dhcp'

- /etc/config/firewall. Zmieniamy strefę wan (która już jest) przez dodanie sieci "trm_wwan"

config zone
    option name 'wan'
    option input 'REJECT'
    option output 'ACCEPT'
    option forward 'REJECT'
    option masq '1'
    option mtu_fix '1'
    option network 'wan wan6 trm_wwan'

- /etc/config/travelmate. Tu definiujemy parametry samego programu - czy  jest włączony (enabled), jak się nazywa sekcja sieci (trm_wwan) itd.

config travelmate 'global'
    option trm_captive '1'
    option trm_iface 'trm_wwan'
    option trm_triggerdelay '2'
    option trm_debug '0'
    option trm_maxretry '3'
    option trm_minquality '35'
    option trm_maxwait '30'
    option trm_timeout '60'
    option trm_rtfile '/tmp/trm_runtime.json'
    option trm_enabled '1'

Zostaje jeszcze włączyć to przy starcie:

# /etc/init.d/travelmate enable

Zrestartować router i cieszyć się automatyką połączenia.

Status

Jeżeli travelmate wykryje sieć, będzie próbował się do niej podłączyć. Jeżeli mu się to uda, zostanie zestawione połączenie i będzie dostęp do internetu. W luci, w "Serwisy" -> "Travelmate", zakładka "Przegląd" prezentuje informacje do której sieci jesteśmy podłączeni. Zakładka "Wireless station" pokazuje na niebiesko sieć do której jesteśmy aktualnie podłączeni, zaś na czerwono - te z którymi jest jakiś problem (nie da się połączyć, złe hasło, nie mają internetu itd).
W konsoli - travelmate tworzy plik w formacje json zawierający informacje o połączeniu:

# cat /tmp/trm_runtime.json 
{ "data": { "travelmate_status": "not connected", "travelmate_version": "1.2.2", "station_id": "radio0\/UPC4D66674\/-", "station_interface": "trm_wwan", "faulty_stations": " radio0\/2.4G-Vectra-WiFi-1868B6\/-", "last_rundate": "01.07.2019 22:54:11", "system": "GL-iNet 6416A v1, OpenWrt 18.06-SNAPSHOT r7812-aced9de9a4" } }

Aktualizacja: ostatnie wersje programu dostępne w OpenWrt 19.07 i wersji rozwojowej posiadają także opcję automatycznego łączenia się do otwartych sieci oraz umożliwiają pisanie skryptów automatyzujących np. potwierdzanie logowania w publicznych hotspotach.

Masz niepotrzebny router, uszkodzony czy nie - chętnie przygarnę go.

2

Odp: [mało znane pakiety] travelmate

Dodam tylko że dla Gargoyle szykowany jest podobny plugin - automat który łączy się z do AP ze zdefiniowanej wcześniej listy.

Masz niepotrzebny router, uszkodzony czy nie - chętnie przygarnę go.

3

Odp: [mało znane pakiety] travelmate

Czy travelmate umożliwia pracę openwrt w trybie JEDNOCZEŚNIE:
- klienta WiFi na WANie (załóżmy że łączymy się do sieci WLAN A)
- AP na dla użytkowników z LAN (udostępniamy sieć B stworzoną na OpenWTR i dostępną dla uż z LAN

Czyli niejako replikowanie WLAN dla użytkowników z LANu którzy tylko mają mieć dostęp po wifi do sieci B

4

Odp: [mało znane pakiety] travelmate

No tak, jest to napisane nawet w pierwszym poście. I to nie travelmate, on zarządza tylko sieciami klienckimi. AP to zwykła funkcja openwrt, ale chodzi o to że travelmate nie koliduje i dobrze działa w takim połączeniu.

Masz niepotrzebny router, uszkodzony czy nie - chętnie przygarnę go.