raspbian: konfiguration des dyndns-clients von no-ip.com

[ geschrieben am 22.09.2018 in blog: der maschinist | tags: #, #, #, #, #, #, #, #, #, #, #, #, #, # ]

ich nutze zwei dyndns-dienste, um mich z.b. von außerhalb per openvpn mit dem heimnetz verbinden zu können. einer von beiden ist der kostenlose service von no-ip.com (kostenlos, wenn man 1x pro monat die nutzungserlaubnis auf deren website erneuert). neben einigen anderen dyndns-updatern bieten no-ip.com auch ihr eigenes update-tool an, dessen einrichtung mir unerwartete kopfschmerzen bereitete. daher hier der abriss der prozedur als erinnerungsstütze…

nach erfolgreicher einrichtung des noip2-dyndns-updaters (offizielle anleitung https://my.noip.com/#!/dynamic-dns/duc) ist es notwendig, noch das init-script einzubinden.

hierfür ist es notwendig, das mitgelieferte script (zu finden unter /usr/local/src/noip-2.1.9-1/debian.noip2.sh) zunächst anzupassen, da ihm keine standard-runlevels mitgegeben wurden.

man füge also vor der zeile „DAEMON=/usr/local/bin/noip2“ den block…

### BEGIN INIT INFO
# Default-Start: 2 3 4 5
# Default-Stop 0 1 6
### END INIT INFO

…ein.

nun nach /etc/init.d kopieren und rechte anpassen:

root@server:~# cp /usr/local/src/noip-2.1.9-1/debian.noip2.sh /etc/init.d/noip2
root@server:~# chmod 755 /etc/init.d/noip2

nun klappt auch das aktivieren des init.d-scripts per…

root@server:~# update-rc.d noip2 defaults
root@server:~# update-rc.d noip2 enable
root@server:~# systemctl start noip2

wenn nach einem reboot kein sofortiges update der dynamischen adresse erfolgt, lohnt es, den status zu checken…

root@server:~# systemctl status noip2

noip2.service
Loaded: loaded (/etc/init.d/noip2; generated; vendor preset: enabled)
Active: active (running) since Sat 2018-09-22 04:35:19 UTC; 2min 31s ago
Docs: man:systemd-sysv-generator(8)
Process: 310 ExecStart=/etc/init.d/noip2 start (code=exited, status=0/SUCCESS)
CGroup: /system.slice/noip2.service
└─318 /usr/local/bin/noip2

Sep 22 04:35:18 raspberrypi1 systemd[1]: Starting noip2.service...
Sep 22 04:35:18 raspberrypi1 noip2[310]: Starting dynamic address update: noip2.
Sep 22 04:35:18 raspberrypi1 noip2[318]: v2.1.9 daemon started with NAT enabled
Sep 22 04:35:19 raspberrypi1 noip2[318]: Can't gethostbyname for dynupdate.no-ip.com
Sep 22 04:35:19 raspberrypi1 noip2[318]: Can't get our visible IP address from ip1.dynupdate.no-ip.com
Sep 22 04:35:19 raspberrypi1 systemd[1]: Started noip2.service.

in diesem fall war „noip2“ wohl schneller als der „dhcpcd“ und hatte noch keine funktionierende verbindung vorgefunden. der einfachste weg wird es sein, den noip2 daemon neuzustarten, wenn der dhcpcd erfolgreich gestartet ist…

root@server:~# echo -e 'echo -e "GET http://google.com HTTP/1.0\\n\\n" | nc google.com 80 -w 10 > /dev/null 2>&1
if [ $? -eq 0 ]; then
/bin/systemctl restart noip2
fi' > /lib/dhcpcd/dhcpcd-hooks/99-noip2

Schreibe einen Kommentar

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind mit * markiert.

Diese Website verwendet Akismet, um Spam zu reduzieren. Erfahre mehr darüber, wie deine Kommentardaten verarbeitet werden.