Igates.txt

Aus DXL-Wiki
Version vom 3. April 2021, 08:10 Uhr von Dl1nux (Diskussion | Beiträge) (→‎Funktionsweise)
(Unterschied) ← Nächstältere Version | Aktuelle Version (Unterschied) | Nächstjüngere Version → (Unterschied)
Zur Navigation springen Zur Suche springen

Funktion der igates.txt

Die Datei igates.txt enthält eine Liste von Gatewayadressen mit Port und Filterangaben, welche das Gateway benutzen kann. Die Datei selbst kann jeden beliebigen Namen haben und muss nicht unbedingt "igates.txt" lauten.

Datenformat

Das Datenformat ist wie folgt: url:port#filter,filter,...

Unterschied zur direkten Auflistung im Aufruf von udpgate4

  • Die gleiche Funktion kann auch beim Aufruf von udpgate4 erfolgen, indem man mehrere -g Angaben hintereinander tätigt, z.B. udpgate4 -s ... -g server1:port1 -g server2:port2 -g ...
  • Der Vorteil daran diese Liste an Gatewayadressen in eine Datei auszulagern ist, dass man diese im laufenden Betrieb jederzeit ändern kann, ohne den Gatewayprozess udpgate4 beenden und neu starten zu müssen.
  • Es können dadurch z.B. mal schnell Filter angepasst werden ohne dass die MH Liste verloren geht

Funktionsweise

Es wird grundsätzlich versucht das erste Gateway in der Liste zu connecten. Ist dieses nicht erreichbar, werden die anderen der Reihe nach solange durchprobiert, bis eine Verbindung klappt. In der Zwischenzeit wird im Hintergrund weiterhin versucht das erste Gateway zu erreichen. Sobald dieses wieder erreichbar ist, wir die Verbindung wieder zum ersten Gateway gewechselt und die andere Verbindung getrennt.

Beispielinhalt

aprs.hc.r1.ampr.org:14580#m/1,-t/t
db0for.ampr.org:14580#m/1,-t/t
rotate.aprs2.net:14580#m/1,-t/t

Erklärung: Hauptgateway ist ein APRS Server in der Hamcloud im Hamnet. Die Alternative dazu ist DB0FOR, ebenfalls im Hamnet. Falls das auch nicht erreichbar ist (z.B. Hamnetanbindung weg) wird auf ein zufälliges Tier2 Gateway im Internet gewechselt (rotate.aprs2.net).

igates.txt neu einlesen

Gelegentlich nimmt man Änderungen an der igates.txt vor und möchte diese sofort wirken lassen ohne den ganzen Prozess von udpgate4 beenden zu müssen. Denn durch einen Neustart der Anwendung wird unter anderem auch die MH-Liste geleert. Mit einem sighup Befehl kann man die aktuelle Verbindung zum entfernten TCP Server trennen, was udpgate4 dazu veranlasst die igates.txt erneut einzulesen um den "nächsten" Server zu kontaktieren. udpgate4 stellt dann fest dass der "alte" Server doch wieder erreichbar ist und baut dorthin erneut eine Verbindung auf, mit den aktualisierten Einstellungen aus der igates.txt.

Man benötigt dazu die Prozess-ID des udpgate4 Prozesses. Diese erhält man beispielsweise über den Taskmanager top oder falls vorhanden htop. Über den Prozessnamen "udpagte4" funktioniert diese Funktion leider nicht.

Beispiel (Prozess-ID = 609):

kill -sighup 609