„MikroTik dinamikus WAN interfészek kezelése” változatai közötti eltérés

Innen: IT documentation
43. sor: 43. sor:
     :set WANIP $tempip
     :set WANIP $tempip
     # DNS rekord frissítése
     # DNS rekord frissítése
     /tool dns-update dns-server=<domain vagy IP> name=<rekord neve, pl: mail> zone=<zóna neve, pl: domain.hu> address=$WAN1IP ttl=3600 key-name=<kulcs neve> key="<kulcs érték>"
     /tool dns-update dns-server=<domain vagy IP> name=<rekord neve, pl: mail> zone=<zóna neve, pl: domain.hu> address=$WANIP ttl=3600 key-name=<kulcs neve> key="<kulcs érték>"


}
}

A lap 2020. január 4., 18:39-kori változata

Összefoglalás

A leírás MikroTik RouterOS 6.44.6 verzión készült.

Előfordulhat, hogy az interfész(ek)en dinamikus IP cím van (és nem is lehet más), de mégis szolgáltatás kell, hogy fusson rajtuk. Amikor a cím(ek) változnak, szükség van az információ automatikus frissítésére egyéb rendszerekben (például DNS rekordok vagy Address list-ek).

A következő Mikortik RouterOS script ebben az esetben lehet hasznos.

IP váltás észlelése

A WANIP golbális változóba helyezzük az aktuális címet és figyeljük, hogy változik e a WAN interface IP címe:

:global WANIP
:local tempip [ /ip address get [ /ip address find interface="WAN" ] address ]
:local tempip [:pick $tempip 0 [:find $tempip  "/" -1 ] ]

if ( $WANIP != $tempip ) do={

    # teendők a régi IP -vel
    :set WANIP $tempip
    # teendők az új IP -vel

}

DNS rekord frissítése

Lehetőség van egy DNS szerveren egy domain egy vagy több "A" rekordjának frissítésére.

Ha távoli eléréshez használnánk ezt a rekordot, akkor sokkal egyszerűbb a Mikrotik DDNS-ét használni:

/ip cloud set ddns-enabled=yes
/ip cloud print
    ddns-enabled: yes
    ddns-update-interval: none
    update-time: yes
    public-address: x.x.x.x
    public-address-ipv6: X:X:X::X
    dns-name: XXX.sn.mynetname.net
    status: updated

A következő módszer inkább egyéb szolgáltatások rekordfrissítéséhez használható.A rekord frissítéshez szükség van egy kulcsra (authorization key / Transfer Signature key), amelyet a DNS szerver üzemeltetőjétől szerezhetünk be. A kulcs birtokában egy egyszerű paranccsal frissíthetjük a rekordot:

:global WANIP
:local tempip [ /ip address get [ /ip address find interface="WAN" ] address ]
:local tempip [:pick $tempip 0 [:find $tempip  "/" -1 ] ]

if ( $WANIP != $tempip ) do={

    :set WANIP $tempip
    # DNS rekord frissítése
    /tool dns-update dns-server=<domain vagy IP> name=<rekord neve, pl: mail> zone=<zóna neve, pl: domain.hu> address=$WANIP ttl=3600 key-name=<kulcs neve> key="<kulcs érték>"

}

Address list frissítése

Ha a WAN IP-vel dolgozni szeretnénk, pl. tűzfal szabályban, akkor egy "address list" -en kell tárolni és frissíteni a dinamikus címet. A következő változat ezt oldja meg:

:global WANIP
:local tempip [ /ip address get [ /ip address find interface="WAN" ] address ]
:local tempip [:pick $tempip 0 [:find $tempip  "/" -1 ] ]

if ( $WANIP != $tempip ) do={
    
    # régi IP levétel
    /ip firewall address-list remove [find list="WAN" address=$WANIP]
    :set WANIP $tempip
    # új IP felvétel
    /ip firewall address-list add list=WAN address=$WANIP 

}