mopskiller
Goto Top

DynDNS Dienst mit Mikrotik Router OS 6.4

Hallo alle zusammen,

ich habe hier einen Mikrotik Router, der unter einer DynDNS Adresse erreichbar gemacht werden soll. Jetzt meine, so dachte ich, simple Frage: Wie richte ich dies auf dem Mikrotik ein? Ich habe bereits einige Anleitungen mit Skripten gefunden, die ich jedoch nicht wirklich verstehe (also die Skripte, nicht die Anleitungen) :D
Gibt es da keine einfachere Möglichkeit? Ich weiß, der Vergleich hinkt mehr als an einer Stelle, aber ich musste mal einer FritzBox DynDNS mitgeben, das war damals relativ einfach. Wie gesagt, ich weiß, dass ein Mikrotik Router keine FritzBox ist aber trotzdem kann ich mir nicht so richtig vorstellen, dass der Mikrotik keine eingebaute Funktion dafür hat...

Oder denke ich an dieser Stelle zu einfach?

Gruß
Mopskiller

Content-Key: 346856

Url: https://administrator.de/contentid/346856

Printed on: April 26, 2024 at 11:04 o'clock

Mitglied: 133883
133883 Aug 21, 2017 updated at 15:02:12 (UTC)
Goto Top
Der Mikrotik hat seinen eigenen DDNS Dienst mit an Bord unter /ip cloud.
Willst du andere Dienste nutzen musst du die Skriptvariante nehmen!
Und was soll daran so schwer sein ...?!
Gut wenn man vorher Frittenkost gewohnt war ist einem Programmieren natürlich fremd, dafür bist du aber ungemein flexibel wenn man mal was anpassen muss. That's it my friend.

Gruß
Member: Mopskiller
Mopskiller Aug 21, 2017 at 15:09:15 (UTC)
Goto Top
Ich danke dir auf jeden Fall erst einmal.

Ja, ich muss zugeben, das ich vorher tatsächlich "Frittenkost" gewöhnt war und nun mehr oder weniger das erste mal mit Mikrotik arbeiten. Dementsprechend tu ich mich sehr schwer, die vorhandenen Skripts zu verstehen, von selber schreiben brauch ich hier gar nicht reden... Das ich an dieser Stelle flexibler bin will ich auch nicht abstreiten, nur hast du recht: Das Programmieren von solchen Dingen ist mir durchaus fremd, daher hatte ich die kleine Hoffnung, dass es einfacher geht. Aber nun gut, scheinbar nicht.

Hast du einen Link parat, wo dieses Thema ordentlich und zuverlässig erklärt wird, so dass es evtl. auch jemand versteht, der in diesem Thema neu ist?

Grüße
Mitglied: 133883
Solution 133883 Aug 21, 2017 updated at 15:12:04 (UTC)
Goto Top
Member: Mopskiller
Mopskiller Aug 22, 2017 at 06:59:36 (UTC)
Goto Top
Ich danke dir. Und keine Sorge, ich habe das schon über die SuFu gefunden, aber ich hab auch noch paar andere Dinger gefunden und wusste nicht genau, was jetzt genau empfehlenswert ist ;)
Ich werd mich jetzt mal daran probieren, mal sehen ob ich es hinbekomme...

Grüße
Member: aqui
aqui Aug 22, 2017 at 08:18:26 (UTC)
Goto Top
Und warum nicht erstmal ip clound ? Ist für einen Klicki Bunti FritzBüx Knecht ggf. erstmal etwas einfacher:
https://wiki.mikrotik.com/wiki/Manual:IP/Cloud
Member: Mopskiller
Mopskiller Aug 22, 2017 at 09:13:33 (UTC)
Goto Top
Wir haben bereits einen eigenen DynDNS (ja ich weiß, DynDNS ist eine Sache für sich, aber das war und ist leider nicht meine Entscheidung) Account und daher soll am Ende eigentlich DynDNS stehen.

Aber grundsätzlich ist das ganze natürlich keine schlechte Idee. Hast du bereits Erfahrungen mit ip cloud gemacht? Funktioniert das ganze auch mit NAT?

Grüße
Mitglied: 133883
133883 Aug 22, 2017 at 11:19:44 (UTC)
Goto Top
Funktioniert das ganze auch mit NAT?
Ja das tut es.
Member: Mopskiller
Mopskiller Aug 22, 2017 updated at 14:06:48 (UTC)
Goto Top
Hab mich jetzt auch mit IPCloud etwas auseinandergesetzt. So gesehen kein schlechtes Ding, aber eine Frage hab ich doch noch: Hab ich einfach nichts gefunden oder unterstützt das von Haus aus (immer noch) nicht die Nutzung von mehreren WAN Anschlüssen? Also nicht, dass das jetzt negativ wäre, ich meine am Ende ist es immerhin kostenlos. Würde mich nur mal interessieren...

Grüße
Mitglied: 133883
133883 Aug 22, 2017 updated at 15:16:01 (UTC)
Goto Top
Nun da der Dienst hier das Default Gateway zur Ermittlung nutzt und auf eine Instanz beschränkt ist logisch dass es hier nur einen Eintrag gibt.
Über einen MetaROUTER auf dem Mikrotik könntest du eine zweite Instanz starten, aber mal ehrlich, das ist völliger Overkill und mit einem minimal modifizierten Skript leicht umzusetzen. Du siehst, Skripting hat seine Vorteile, also beschäftige dich damit und du wirst begeistert sein was sich damit so alles umsetzen lässt. Zumal die Programmiersprache an einem Mittag gelernt ist, Link siehe oben.
Member: Mopskiller
Mopskiller Aug 22, 2017 at 15:27:35 (UTC)
Goto Top
Jap, hab mich mittlerweile auch mit beschäftigt ;) Und ja, ist schon toll. Ich hab ja auch nie gesagt, dass ich mich nicht mit beschäftigen will. Ich hab die ganze Einrichtung des Mikrotiks bisher auch immer per Skript gelöst, allerdings ist das ja eine ganze Spur einfacher als der Rest.
Wie dem auch sei, da ich beiden WAN Interfaces eine eigene Adresse zuweisen will, fällt IP Cloud natürlich raus. Trotzdem danke für die Inspiration an dieser Stelle face-smile Den Rest mit zwei Skripten und DynDNS zu erledigen sollte ich jetzt wohl hoffentlich hinbekommen.

Danke euch!
Grüße
Mitglied: 133883
133883 Aug 23, 2017 at 07:56:38 (UTC)
Goto Top
Na dann bitte noch den Haken dran.
Member: Mopskiller
Mopskiller Aug 23, 2017 updated at 09:35:57 (UTC)
Goto Top
Mmh, es soll irgendwie doch nicht so richtig klappen, vielleicht könnt ihr mir nochmal helfen.
Ich habe jetzt sowohl Skript, als auch Scheduler eingerichtet. Dachte ich jedenfalls. Das Skript wird aber nicht vom Scheduler ausgeführt, zumindest steigt der Counter beim Scheduler an, der beim Skript allerdings nicht. Wenn ich das Skript dann manuell starte passiert aber leider auch nicht. Zumindest bleibt mein Log unverändert.
Hier das Skript:

# Set needed variables
:local username "theusernamename"  
:local password "thepasswordword"  
:local waninterface "ether1"  
:local ddnshost blabla.dyndns.org

:global dyndnsForce

# Initialize needed variables
# Possible format of ipfresh: 192.168.100.100/24
:local ipddns [:resolve $ddnshost];
:local ipfresh [ /ip address get [/ip address find interface=$waninterface ] address ]

# print some debug info
log info ("Current IP on $waninterface = $ipfresh")  
log info ("Current IP of $ddnshost = $ipddns")  


:if ([ :typeof $ipfresh ] = nil ) do={
   :log warning ("DynDNS: No ip address on $waninterface . Check it!")  
} else={
	:for i from=( [:len $ipfresh] - 1) to=0 do={ 
		:if ( [:pick $ipfresh $i] = "/") do={   
			:set ipfresh [:pick $ipfresh 0 $i];
	   } 
	}
	log info ("Formatted current IP on $waninterface = $ipfresh")  

	:if (($ipddns != $ipfresh) || ($dyndnsForce = true)) do={
		
		:log info ("DynDNS: IP-DynDNS = $ipddns")  
		:log info ("DynDNS: IP-Fresh = $ipfresh")  
		:log info "DynDNS: Update IP needed, Sending UPDATE...!"  
		
		:global str "/nic/update\?hostname=$ddnshost&myip=$ipfresh&wildcard=NOCHG&mx=NOCHG&backmx=NOCHG"  
		:set dyndnsForce false
		/tool fetch address=members.dyndns.org src-path=$str mode=http user=$username \
			password=$password dst-path=("/DynDNS.".$ddnshost)  
		
		:delay 1
		
		:global str [/file find name="DynDNS.$ddnshost"];  
		/file remove $str
		:global ipddns $ipfresh
		
		:log info "DynDNS: IP updated to $ipfresh!"  
		
	} else={
    :log info "DynDNS: dont need changes";  
	}
} 

Und hier der Schedulereintrag für das Terminal:

/system scheduler add comment="" disabled=no interval=15m name=dyndns_update_ether1 on-event=\  
    dyndns_update_script_ether1 start-date=jan/01/1970 start-time=00:00:00 policy=\
		ftp,reboot,read,write,policy,test,winbox,password,sniff,sensitive,api
/system scheduler add comment="" disabled=no interval=1d name=dyndns_force_update_start on-event=\  
    dyndns_force_update_script start-date=jan/01/1970 start-time=02:00:00 policy=\
		ftp,reboot,read,write,policy,test,winbox,password,sniff,sensitive,api

Sieht jemand den Fehler?

Grüße