Hallo zusammen,
ich habe hier ein Netzwerkinterface (VoIp) bei welchem ich nur die Ziel IP-Adresse der Gegenstation konfigurieren kann. Die Gegenstation hat aber keine feste IP. Meine Frage: hat jemand eine Idee wie ich diese feste IP-Adresse auf eine Dyndns Domain ("meinname.dyndns.org") umleiten kann damit ich nicht jedes mal wenn die Gegenstation eine neue IP erhält umkonfigurieren muss?
Ich bin dankbar für jeden Ansatz.
Gruss
Daniel
IP Adresse auf Domain Name umleiten
-
Bambi -
8. Oktober 2013 um 21:02 -
Erledigt
Heute ist Stammtischzeit:
Jeden Donnerstag 20:30 Uhr hier im Chat.
Wer Lust hat, kann sich gerne beteiligen. ;)
Jeden Donnerstag 20:30 Uhr hier im Chat.
Wer Lust hat, kann sich gerne beteiligen. ;)
-
-
IP Adresse auf Domain Name umleiten? Schau mal ob du hier fündig wirst!
-
Hi Daniel
Irgendwie kann ich Deiner Fragestellung nicht ganz folgen.
Zitat
die Ziel IP-Adresse der Gegenstation konfigurieren ... Gegenstation hat aber keine feste IP ... diese feste IP-Adresse auf eine Dyndns DomainKannst Du bitte etwas "deutlicher" werden?
Um die Internet- (öffentliche) IP zu bekommen im Terminal einfach folgendes ausrufen:
Dann kann das Textfile für eine automatische re-config hergenommen werden.
Sven
-
ich habe hier ein Netzwerkinterface (VoIp) bei welchem ich nur die Ziel IP-Adresse der Gegenstation konfigurieren kann.
Die Gegenstation hat aber keine feste IP.
Meine Frage: hat jemand eine Idee wie ich diese feste IP-Adresse auf eine Dyndns Domain ("meinname.dyndns.org") umleiten kann damit ich nicht jedes mal wenn die Gegenstation eine neue IP erhält umkonfigurieren muss?Installier dir zum Beispiel ddclient und leg dir einen NO-IP.com Account zu (kostenlos)
-
Installier dir zum Beispiel ddclient und leg dir einen NO-IP.com Account zu (kostenlos)Das genau kann er ja anscheinend nicht, da wohl nur eine IP-Adresse in der VoIP-Config eingetragen werden kann...
Alternativ, wenn Du die IP des Remote-Hosts brauchst, setze auf dem Remote-System ein DynDNS (NO-IP.biz) auf und frage diesen mit unten stehendem Kommando ab.
Sven
-
Wenn die Gegenstelle sich zum einen zB alle 24 Stunden neu einwählt (Zwangstrennung bei DSL) und zum anderen ständig eine andere IP zugeteilt kriegt, muss die Gegenstelle eine Dynamic-DNS nutzen damit er die aktuelle Internet-IP herausfinden kann
Es gibt zwar noch andere Wege aber die wären zu aufwändig - zB indem sich die Gegenstelle eine SSH Verbindung zum TE herstellt und dann die IP ausgelesen wird... Aber wenn der TE auch öfters ne neue Internet-IP zugeteilt brauch auch der eine Dynamic-DNS...
-
Wenn die Gegenstelle sich zum einen zB alle 24 Stunden neu einwählt (Zwangstrennung bei DSL) und zum anderen ständig eine andere IP zugeteilt kriegt, muss die Gegenstelle eine Dynamic-DNS nutzen damit er die aktuelle Internet-IP herausfinden kannGenau das ist der 2. Teil meines Posts
-
Hallo zusammen,
vielen Dank für das rege Interesse! Den Ansatz mit dem ddclient auf der Raspi und Dyndns bin ich auch gegangen. Das Funktioniert auch wunderbar. Ich versuche etwas mehr Licht ins Dunkel zu bringen:
Auf der Seite A habe ich einerseits die Raspberry welche den Dyndns Server up to Date hält zum anderen meine VoIp Box also ein zweites Gerät. In diesem kann ich nur eine Ziel IP Adresse und den PORT der Seite B. (Also die öffentliche IP der Seite B) Auf der Seite B wird diese Verbindung auf die VoIp Box per Port Forwarding realisiert. Das funktioniert soweit. Da aber die öffentliche IP der Seiten wechselt sollte die Raspberry zusätzlich zum Dyndns update auch "irgendwie" den Ausgang statt auf die statische öffentliche Adresse der VoIP Box auf die Dyndns Domain "verbogen" werden, dort ist ja die aktuelle öffentliche IP hinterlegt.
Ich hoffe man kann das halbwegs nachvollziehen.
Nochmals vielen Dank für das Interesse.
Grüsse
Daniel -
Wenn Du die Konfig vom VoIP per script anpassen?
Wenn ja, dann frage via crontab alle x Minuten / Stunden mit folgendem Kommando die IP der (geänderten) Gegenstelle ab und aktualisiere Deine lokale Config mit der neuen IP der Gegenstelle.
Dieses Kommando schreibt Dir die IP-Adresse in die Date "ip.txt" im Home-Verzeichnis des Benutzers, der dieses Kommando ausgeführt hat.
Wenn Du dann noch ein Script hast, um die VoIP-Config anzupassen, dann kannst Du auf die "ip.txt" verweisen, um die Gegenstellen-IP einzutragen.
HTH
Sven -
Um was für ein VoIP Gerät handelt es sich dabei denn und möchtest du das die aktuelle IP automatisch in dem VoIP-Gerät eingetragen wird?
Also das was eBiBy beschrieben hat:
Benutzer (am besten die von root) Crontab editieren:
(wenn anstatt vi lieber nano als Editor genutzt werden soll, dann ein mal vorher das eingeben: export EDITOR=nano)Dort dann folgendes eintragen:
(wird jede Minute ausgeführt)
Dann das Script erstellen:
nano /usr/local/bin/voip.sh
Bash
Alles anzeigen#!/bin/bash FILE=/var/www/VoIP.txt DynDNS=DynDNS.Name.der.Gegenstelle [ -f $FILE ] && VoIP=$(cat $FILE) || VoIP=0 NewIP=$(dig $DynDNS +short) [ ! -z "$NewIP" ] && [ "$VoIP" != "$NewIP" ] && echo $NewIP > $FILE exit 0
Was das Script macht:
- Falls die Datei $FILE existiert, wird der Inhalt dieser Datei in die Variable $VoIP hinterlegt, wenn das File nicht existiert wird die Variable VoIP auf 0 gestellt
- Dann wird die Abfrage der DynDNS durchgeführt und das Resultat in die Variable NewIP geschrieben
- Danach wird geprüft ob die Variable NewIP nicht leer ist (falls die DynDNS nicht aufgelöst werden konnte weil der RPI grad nicht online ist o.ä.) und falls in $NewIP eben was drin steht wird diese mit $VoIP verglichen, wenn die sich unterscheiden wird die neue IP ins $FILE geschrieben (das verhindert zum einen dass $FILE leer wäre und zum anderen unnötige Schreibvorgänge)Script ausführbar machen:
Wenn du einen apache2 Webserver installiert hast kannst du einfach die IP deines RaspberryPI's ansurfen und die VoIP.txt aufrufen um die aktuelle IP zu sehen: http://raspberry.ip/VoIP.txt
-
Hallo zusammen,
die Konfiguration der VoIP Box erfolgt über eine virtuelle Netzwerkverbindung am USB-Port. Das ganze ist in einer Visuellen Konfigurationssoftware verpackt... ich hab die Kommunikation mal mit Wireshark angeschaut - das ist definitiv zu kompliziert für mich. Wenn es über RS-232 ginge wäre ein Scribt natürlich der gangbare Weg. Was ich wohl in den Griff bekommen würde.
Ich habe mir erhofft das möglich ist, dass die Voip-Box auf die Rasperry zugreift und diese ein NAT/Routing? auf die DynDns Domain macht. Also interne IP-Adresse der Raspi in der VoIP - Zieldomain in der Raspberry.
Besten Dank für euer angagiertes Mitdenken.
Gruss
Daniel -
Wenn ein bestimmter Port für VoIP genutzt wird, wäre das möglich, dann eben über iptables umleiten
-
Hallo Meigraf,
den Ansatz habe ich auch versucht, leider erfolglos. Ja die VoIP Verbindung ist auf einem PORT mit UDP gebunden. Ich hab was mit PREROUTE versucht, aber da konnte ich auch nur IP Adressen eintragen. Aber genau das wäre es was ich suche.
Gruss
Daniel -
Das würde ich dann über das Script regeln, wenn sich die VoIP geändert hat -> iptables Eintrag löschen und mit der NewIP neu setzen
Wie sieht denn dein bisheriger Versuch mit iptables aus?
Hast du auch ip_forwaring ein geschaltet?Also:
Codemodprobe ip_tables modprobe ip_conntrack modprobe iptable_nat echo 1 > /proc/sys/net/ipv4/ip_forward
Dann das Script anpassen:
Bash
Alles anzeigen#!/bin/bash VoIPport=1234 DynDNS=DynDNS.Name.der.Gegenstelle [ -f $FILE ] && VoIP=$(cat $FILE) || VoIP=0 NewIP=$(dig $DynDNS +short) if [ ! -z "$NewIP" ] && [ "$VoIP" != "$NewIP" ]; then iptables -F ;#loescht alle iptables chains iptables -X ;#loescht user definierte chains iptables -t nat -A PREROUTING -p tcp --dport $VoIPport -j DNAT --to-destination $NewIP:$VoIPport ;#Leitet die Anfragen an den anderen Server weiter iptables -t nat -A POSTROUTING -p tcp --dport $VoIPport -j MASQUERADE ;#Empfaengt von ServerB und leitet zurueck an den Client fi exit 0
Probiers damit mal - keine Garantie
-
Raspi's kann man ja eh nicht genug haben.
Mein Tip :
Kauf dir nen zweiten Raspi, bau ein VPN zwischen den beiden Netzen auf dann kannst du eine feste IP in der Voipbox angeben.
Hat auch den Vorteil das dein VoIP nicht offen über das Netz geht.
Um das DynDNS kümmert sich dann der PI und das openVPN. -
Hallo ihr beiden,
vielen Dank für die Vorschläge!! Klingt beides interessant. Ich werde mir das mal in Ruhe anschauen, ich soll ja selbst auch was machen Ich werde mich nochmals melden ob das Problem gelöst ist.
P.S.: Portforwarding hab ich nur auf dem Router gemacht.
grüsse dankend
Daniel -
Eine Portweiterleitung auf dem Router brauchst du nur wenn jemand übers Internet zu dir eine Verbindung herstellen will - aber wenn dein Raspberry die Verbindung herstellt wird keine Portweiterleitung bei dir im Router benötigt
Der von mir beschriebene Weg war ja dafür gedacht dass dein VoIP Gerät als IP den Raspberry einträgt und der RaspberryPI leitet die Pakete dann an die DynDNS weiter, bzw sobald sich die IP der DynDNS ändert wird die iptables Rule erneuert...
Das solltest du denk ich erst mal testen bevor du den einen 2. RPI kaufst um den um den von Der_Imperator beschrieben Weg zu nutzen
-
Eine Portweiterleitung auf dem Router brauchst du nur wenn jemand übers Internet zu dir eine Verbindung herstellen will - aber wenn dein Raspberry die Verbindung herstellt wird keine Portweiterleitung bei dir im Router benötigtAlso so wie ich dies verstehe :
Hallo zusammen,
ich habe hier ein Netzwerkinterface (VoIp) bei welchem ich nur die Ziel IP-Adresse der Gegenstation konfigurieren kann. Die Gegenstation hat aber keine feste IP.Hängt die VoIP Box irgendwo im Internet und will ne fixe v4 Adresse und keinen Hostnamen.
Das Target der VoIPBox hängt aber an einem Home DSL mit wechselnder IP.Beispiel : VoIP Box bei Omma und ich will das Ding im SiP meiner Fritzbox registrieren.
Jetzt soll der PI irgendow in die lokalen Netze und ein "revers DynDNS" machen um die momentane Public IP der Fritzbox raus zu bekommen und das dann dem VoIP vorzunatten.Ergo : ein Pi bei Omma, einer zu Hause, VPN dazwischen und alles ist gut.
Auch brauch ich meinen SiP nicht per Forwarding ans Internet zu hängen. -
Hallo zusammen,
ich hab mich durchgekämpft und einiges gelernt:) Hab das Cron noch gar nicht gekannt, auch das resolve mit dig war neu....
Soweit läuft jetzt alles bis auf das PREROUTING/POSTROUTING:
Es wird ein Fehler angezeigt: Bad Argument 'xxx.xxx.xxx.xxx:' #das ist die neu eingelesene IP
Bad Argument '50000' #das ist der benützte Port
wenn ich die Zeile mit dem POSTROUTING auskommentiere kommt nur der Fehler mit der IP Adresse der Portfehler wird nicht angezeigt.
Kannst du mir nochmal auf die Sprünge helfen? Die Lösung einfach und perfekt.
Gruss und dank
Daniel -
Poste doch mal bitte die beiden Kommandos, die Du absetzt.
Danke
-
Hallo eBiBy,
gerne:
iptables -t nat -A PREROUTING -p tcp -dport $PORT -j DNAT -to-destination $NewIP:$PORT;
iptables -t nat -A POSTROUTING -p tcp -dport $PORT -j MASQUERADE;
der Port scheint das Problem zu sein aber ich finde nicht heraus wieso....
Besten Dank für dein Interesse.
Gruss
Daniel -
Jetzt mitmachen!
Du hast noch kein Benutzerkonto auf unserer Seite? Registriere dich kostenlos und nimm an unserer Community teil!