Mikrotik IPV6 Network, IPV4 ISP

Hi, I want to setup a IPV6 network but the internet is get is using IPV4 with broadband connection (pppoe)

can someone help me and tell me what to do?

On your internal network you can have IPv6 regardless of what your ISP is offering, but you will not be able to communicate to the rest of the world over IPv6.

Other solution is to look at IPv6 tunnel, something like this:
https://tunnelbroker.net/

hmm thanks but i dont have any control over my public ip address.. what should I do ?

If you don’t control your public IP then there’s really not much that you can do.

If your device has a static public IP address, then you can either use tunnelbroker, or even get your feet wet using 6to4 addressing.

You can have a dynamic ip and use the he.net tunnelbroker. I use it with one and also in compinations with pppoe.

  1. Setup to tunnel. You can copy the configuration for RouterOS from the “Example Configurations” tab.
  2. Next i added a ppp profile for my pppoe connection and i added a script an the up event. The will update the local-address an your site of the tunnel.
/ppp profile
add change-tcp-mss=yes name=profile-pppoe on-up=\
    "/interface 6to4 set <6to4 Interfacename> local-address=(\$\"local-address\")"
  1. Next you need to update the he.net tunnel site. For that he.net provides an update url in the “Advanced” tab.
    For my script you need three information. The username, the password and the tunnel id. All this can be found in the update url.
    To check if the public has changed i use a no-ip (i already had it setup). If you don’t have setup a dns address, you can use the built-in ddns form routeros.
:local heUser ""
:local hePass ""
:local heTunnelId ""

:local dynName ""
:local inetinterface ""

:if ([/interface get $inetinterface value-name=running]) do={
   :local currentIP [/ip address get [find interface="$inetinterface" disabled=no] address]

   :for i from=( [:len $currentIP] - 1) to=0 do={
      :if ( [:pick $currentIP $i] = "/") do={ 
         :set currentIP [:pick $currentIP 0 $i]
      } 
   }

   :local previousIP [:resolve domain-name="$dynName"]

   :if ($currentIP != $previousIP) do={
      :log info "He.net: Current IP $currentIP is not equal to previous IP, update needed"
      :local url "https://ipv4.tunnelbroker.net/nic/update?hostname=$heTunnelId"
      :log info "He.net: Sending update for tunnelbroker.net"
      /tool fetch url=$url user=$heUser password=$hePass mode=https keep-result=no
   }

} else={
   :log info "He.net: $inetinterface is not currently running, so therefore will not update."
}
  1. Last you need a schedules for the script.
/system scheduler
add interval=5m name=heUpdater on-event=tunnelbroker policy=read,write,test start-time=startup

Techely it should be enough to fetch the update url on the pppoe up event but i think i tried it and it don’t work. But i don’t know exactly anymore.