bvb09-fan
Goto Top

Domain Adressen Update Mikrotik

Hallo. Jede Stunde führt der Mikrotik RB5009 das DDNS update Script aus. Im Log des Mikrotik schreibt er die beiden verschiedenen Public IP Adressen. Auf der Anbieter IPV64 WEB-Seite sehe ich aber, das er bei beiden Domain Adressen jeweils die gleichen Public IP Adressen schreibt. Entweder die Public IP von WAN-1 oder eben die von WAN-2.
hier meine Conig vom Mikrotik.

---Script-update-DDNS---
:local ipv64key "xxxxxxxxxxxxx"
:local hostname1 "xxxxxxxx.home64.de"
:local hostname2 "xxxxxxxx.ipv64.net"
:local interface1 "WAN_1"
:local interface2 "WAN_2_pppoe-out"
:local ip1 [/ip address get [find interface=$interface1] address]
:local ip2 [/ip address get [find interface=$interface2] address]
:log info "Public IP von $interface1: $ip1"
:log info "Public IP von $interface2: $ip2"
:log info "Aktualisierung von DDNS IPv64 für $hostname1"
:log info "Aktualisierung von DDNS IPv64 für $hostname2"
/tool fetch url=("https://ipv64.net/update.php?key=$ipv64key&domain=$hostname1") keep-result=no
/tool fetch url=("https://ipv64.net/update.php?key=$ipv64key&domain=$hostname2") keep-result=no
:log info "DDNS Update für $hostname1 abgeschlossen"
:log info "DDNS Update für $hostname2 abgeschlossen"

/routing rule
add action=lookup-only-in-table disabled=no src-address=xxx.xxx.xxx.xxx/32 \
table=to_WAN1
add action=lookup-only-in-table disabled=no src-address=xxx.xxx.xxx.xxx/32 \
table=to_WAN2
add action=lookup-only-in-table disabled=yes interface=vlan-qnap-host table=\
to_WAN2

/ip route
add check-gateway=ping comment="main WAN1" disabled=no distance=1 \
dst-address=0.0.0.0/0 gateway=xxx.xxx.xxx.x pref-src="" routing-table=\
main scope=30 suppress-hw-offload=no target-scope=10
add check-gateway=ping comment="main WAN2" disabled=no distance=1 \
dst-address=0.0.0.0/0 gateway=xxx.xxx.xxx.x pref-src="" routing-table=main \
scope=30 suppress-hw-offload=no target-scope=10
add check-gateway=ping comment="to WAN1" disabled=no distance=1 dst-address=\
0.0.0.0/0 gateway=xxx.xxx.xxx.x pref-src="" routing-table=to_WAN1 scope=\
30 suppress-hw-offload=no target-scope=10
add check-gateway=ping comment="to WAN2" disabled=no distance=1 dst-address=\
0.0.0.0/0 gateway=xxx.xxx.xxx.x pref-src="" routing-table=to_WAN2 scope=30 \
suppress-hw-offload=no target-scope=10

/ip firewall nat
add action=masquerade chain=srcnat out-interface=WAN_1
add action=masquerade chain=srcnat out-interface=WAN_2_pppoe-out
add action=masquerade chain=srcnat comment="hairpin-nat " out-interface=\
bridge

Content-Key: 4229484171

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

Printed on: June 16, 2024 at 06:06 o'clock

Member: hempel
Solution hempel May 23, 2024 updated at 09:43:32 (UTC)
Goto Top
Du gibst ja die IP auch nicht als Parameter mit beim Update insofern kein Wunder ...

:local ipv64key "xxxxxxxxxxxxx"  
:local hostname1 "xxxxxxxx.home64.de"  
:local hostname2 "xxxxxxxx.ipv64.net"  
:local interface1 "WAN_1"  
:local interface2 "WAN_2_pppoe-out"  
:local ip1 [/ip address get [find interface=$interface1] address]
:local ip2 [/ip address get [find interface=$interface2] address]
:set ip1 [:pick $ip1 0 [:find $ip1 "/"]]  
:set ip2 [:pick $ip2 0 [:find $ip2 "/"]]  

/log info "Public IP von $interface1: $ip1"  
/log info "Aktualisierung von DDNS IPv64 für $hostname1"  
:do {
    /tool fetch url="https://ipv64.net/update.php?key=$ipv64key&domain=$hostname1&ip=$ip1" output=none  
    /log info "DDNS Update für $hostname1 abgeschlossen"  
} on-error={
    /log warning "Fehler bei Update für $hostname1"  
}

/log info "Public IP von $interface2: $ip2"  
/log info "Aktualisierung von DDNS IPv64 für $hostname2"  
:do {
    /tool fetch url="https://ipv64.net/update.php?key=$ipv64key&domain=$hostname2&ip=$ip2" output=none  
    /log info "DDNS Update für $hostname2 abgeschlossen"  
} on-error={
    /log warning "Fehler bei Update für $hostname2"  
}
Außerdem hast du beide WAN Default GWs mit der selben Distance angegeben, da findet dann vom Router selbst eine zufällige Auswahl der Verbindungen bei den GWs statt.
Member: aqui
aqui May 23, 2024 updated at 09:22:05 (UTC)
Goto Top
Mittlerweile ist so ein Scripting mit aktuellen RouterOS Versionen auch überflüssig geworden, da Mikrotik einen kostenfreien, bordeigenen DDNS Dienst supportet wie z.B. "MyFritz" bei AVM:
https://mikrotik-blog.com/dyndns-unter-mikrotik-routeros-einrichten
Damit ist so ein Verhalten wie das obige ausgeschlossen.
Member: BVB09-FAN
BVB09-FAN May 23, 2024 updated at 09:24:10 (UTC)
Goto Top
wie wären denn die Einstellungen zum mitgeben der IP Parameter.
Ausgabe LOG
12:16:19 script,info Public IP von WAN_1: xxx.xxx.xxx.xxx/21
12:16:19 script,info Public IP von WAN_2_pppoe-out: xxx.xxx.xxx.xxx/32
12:16:19 script,info Aktualisierung von DDNS IPv64 fFCr xxxxx.home64.de
12:16:19 script,info Aktualisierung von DDNS IPv64 fFCr xxxxx.ipv64.net
12:16:20 fetch,info Download from ipv64.net FINISHED
12:16:21 fetch,info Download from ipv64.net FINISHED
12:16:21 script,info DDNS Update fFCr xxxxx.home64.de abgeschlossen
12:16:21 script,info DDNS Update fFCr xxxxx.ipv64.net abgeschlossen

Die Distanz von WAN_2_pppoe-out ist eigentlich auf 2, hatte sie vergessen zurückzustellen beim Testen
Member: hempel
hempel May 23, 2024 updated at 09:23:46 (UTC)
Goto Top
wie wären denn die Einstellungen zum mitgeben der IP Parameter.
Steht doch oben ...

p.s. Freitag ist erst morgen. 🐟
Member: Epixc0re
Epixc0re May 23, 2024 at 09:33:10 (UTC)
Goto Top
Hallo,

/ip/cloud/set ddns-update-interval=5m ddns-enabled=yes
/ip/cloud/print 
          ddns-enabled: yes
  ddns-update-interval: 5m
           update-time: yes
        public-address: 1.2.3.4
              dns-name: **deindyndnsname.sn.mynetname.net**
                status: updated
      back-to-home-vpn: revoked-and-disabled

Damit kannst Du dann einfach einen CNAME Record machen:
home.xxxx.de => CNAME => deindyndnsname.sn.mynetname.net

have fun.

Stefan
Member: BVB09-FAN
BVB09-FAN May 23, 2024 at 09:33:21 (UTC)
Goto Top
leider führen Deine Parameter kein Update aus
Member: hempel
hempel May 23, 2024 updated at 09:44:26 (UTC)
Goto Top
Noch was geändert. Rest bekommst du jetzt selbst hin wenn du das Manual vom DDNS Dienst liest.
Member: BVB09-FAN
BVB09-FAN May 23, 2024 at 09:44:43 (UTC)
Goto Top
vielen Dank an Hempel für Deine Lösung.