İndir

MikroTik için ForestVPN

RouterOS 7 çalıştıran bir MikroTik yönlendiricide konteyner olarak ForestVPN. Kendi başına bir cihaz olarak kaydolur ve bir eşleştirme kodu yazdırır.

Edin

Edin

suquant/fvpn:0.3.17

Gereksinimler

Gereksinimler

RouterOS
7.21 veya üzeri. Daha eski sürümler kurulum bloğunu reddeder.
Konteyner desteği
container paketi kurulu ve konteyner aygıt modu etkin. Bunu etkinleştirmek yönlendiriciye fiziksel erişim gerektirir; bu MikroTik'in kuralıdır, bizim değil.
İşlemci
arm, arm64 veya x86.
Bir yönlendirici, bir cihaz
Konteyner kendi makine anahtarını tutar ve hesabına kendi başına bir cihaz olarak bağlanır.
Kurulum

Kurulum

Gerçek donanımda doğrulanmış bir RouterOS konteyneri — bir MikroTik cAP ax imajı çekti, kaydoldu, bir eşleştirme kodu yazdırdı ve bağlandı. Kendi makine anahtarını tutar ve tıpkı telefon gibi kontrol düzleminden bir çıkış ister.

  1. 01

    Konteynere kendi adresini verin

    RouterOS terminalinde üç satır — yalnızca konteyner ile yönlendirici arasında var olan bir /30, LAN'ınızda aranacak bir şey yok.

  2. 02

    Konteyneri ekleyin ve başlatın

    :latest değil, sabitlenmiş bir imaj — önünde durmadığınız bir yönlendirici, çalıştırdığı şeyi asla sessizce değiştirmemelidir.

  3. 03

    Eşleştirme kodunu okuyun

    Konteyner herhangi bir ağ erişimine sahip olmadan önce /log'a yazdırır. Hesap numaranızla zaten oturum açmış olan ForestVPN uygulamasını açın ve kodu girin.

  4. 04

    Çıkışı telefonunuzdan seçin

    Yönlendirici, az önce verdiğiniz adreste kendi durum sayfasını sunar — bunu aynı ağdaki bir telefondan açın ve bir konuma dokunun. Bu, ekransız bir kutunun kendi başına yapamayacağı tek şeydir.

Kurulumun tamamı
/interface/veth/add name=veth-fvpn address=172.31.254.2/30 gateway=172.31.254.1
/ip/address/add address=172.31.254.1/30 interface=veth-fvpn
/interface/list/member/add list=LAN interface=veth-fvpn
# A `flash` folder (hAP ac² and other 16 MB boards) means only flash/ survives a reboot: the state
# goes there, the log stays in RAM, and the image is pulled again at every boot.
:global fvRAMROOT ([:len [/file/find where name="flash"]] > 0)
:global fvSTATE "/forestvpn"
:global fvCMD "--agent --nat-lan --iface fvpn0 --config /etc/forestvpn/fvpn0.conf --policy-route --fwmark 51820 --table 100 --http-port 80 --report /etc/forestvpn/result.txt"
:if ($fvRAMROOT) do={
    :global fvSTATE
    :global fvCMD
    :set fvSTATE "flash/forestvpn"
    :set fvCMD ($fvCMD . " --log-dir /var/log")
}
/container/mounts/add list=fvpn-state src=$fvSTATE dst=/etc/forestvpn mode=rw
/container/add remote-image=suquant/fvpn:0.3.17 interface=veth-fvpn root-dir=/fvpn \
    mountlists=fvpn-state entrypoint=/mikrotik.sh cmd=$fvCMD \
    privileged=yes logging=yes start-on-boot=yes dns=172.31.254.1 name=fvpn
:if ($fvRAMROOT) do={
    /container/set [find name="fvpn"] start-on-boot=no
    /system/script/add name=forestvpn-repull comment="forestvpn" source={
:local c [/container/find where name="fvpn"]
:if ([:len $c] = 1) do={
    :local n 0
    :while ((![/container/get $c running]) && ($n < 60)) do={
        :set n ($n + 1)
        :log info ("ForestVPN: pulling the image into the RAM root, attempt " . $n)
        :do { /container/repull $c } on-error={}
        :local w 0
        :local s ""
        :while (($w < 60) && ($s = "")) do={
            :set w ($w + 1)
            :delay 5s
            :local st [:pick [/container/print as-value where name="fvpn"] 0]
            :if (($st->"stopped") = true) do={ :set s "stopped" }
            :if (($st->"download/extract failed") = true) do={ :set s "failed" }
        }
        :if ($s = "stopped") do={
            :do { /container/start $c } on-error={}
            :delay 30s
        } else={
            :log warning "ForestVPN: image pull failed, retrying in 60s"
            :delay 60s
        }
    }
    :if (![/container/get $c running]) do={
        :log error "ForestVPN: the container is still not running after 60 pulls; see /container/print"
    }
}
}
    /system/scheduler/add name=forestvpn-repull start-time=startup comment="forestvpn" \
        on-event="/system/script/run forestvpn-repull"
}
/container/start [find name="fvpn"]

Her satır işlevseldir, özellikle `cmd=`.

`--agent` olmadan giriş noktası, hesap tarafından yönetilen yerine ham tünelleyiciyi çalıştırır, kimsenin yazmadığı bir `.conf` arar ve konteyner `fvpn0 never appeared` hatasıyla çıkar. Diğeri bağlamadır (mount): imaj `scratch` olduğundan yeniden başlatmadan yalnızca bağlanmış olan sağ çıkar ve makine anahtarının bağlamasını kaybetmek, yönlendiricinin sessizce hesabınızdan düşmüş yepyeni bir cihaz olarak geri gelmesi anlamına gelir.

İlk çalıştırma

İlk çalıştırma

  1. 01

    Eşleştirme kodunu oku

    /log içine yazdırılır ve yönlendirici http://172.31.254.2/ adresinde bir durum sayfası sunar.

  2. 02

    Uygulamada gir

    ForestVPN'i oturum açtığın bir telefonda aç ve kodu gir. Bağlantı uygulamadan kurulur, yönlendiriciden değil.

  3. 03

    Çıkışı seç

    Durum sayfasında bir konuma dokun.

MikroTik üzerinde neler çalışır

MikroTik üzerinde neler çalışır

Tüm yönlendirici, tek tünel
Konteyner, RouterOS'un ona verdiğini tünelden geçirir. Hangi trafiğin bu olduğuna RouterOS karar verir.
Sabitlenmiş imaj
Kurulum sabit bir imaj etiketi kullanır, asla :latest değil; böylece başında durmadığın bir yönlendirici çalıştırdığını sessizce değiştirmez.
Flash klasörlü kartlar
hAP ac² gibi kartlar yeniden başlatmada yalnızca flash klasörünü korur. Kurulum bloğu bunu ele alır.

MikroTik'te henüz yok: ForestVPN içinden hedef başına site ya da hizmet seçmek. Yönlendirme kararını RouterOS verir.

MikroTik platformundaki yenilikler

MikroTik platformundaki yenilikler

0.3.16

  • The router now makes its own account and name-lookup requests through the same fallback paths as the apps, so it keeps reaching ForestVPN on networks that interfere with them.

0.3.15

  • A router stays on the location you chose: the fallback path no longer moves it to another one.
  • Tested on an arm64 router before release; not yet on 32-bit ARM hardware.

0.3.14

  • Boards with a flash folder (the hAP ac² and other 16 MB boards) now keep their key and settings across a reboot.

Tüm sürüm notları

Güncellemeler

Güncellemeler

Daha yeni bir imaja geçmek bilinçli bir adımdır, çünkü etiket sabitlenmiştir.

Değişiklik günlüğünü oku

İndirmeni doğrula

İndirmeni doğrula

İmaj suquant/fvpn:0.3.17. Etiket sabitlenmiştir ve Docker Hub'da yayımlanmıştır; kurulum bloğu tam olarak bu etiketi kullanır.

Kaldırma

Kaldırma

Konteyneri /container/stop ve /container/remove ile durdur ve kaldır, sonra veth'ini ve adresini sil. Cihaz, uygulamada kaldırana kadar hesabında kalır.

Sık sorulan sorular

Hangi MikroTik yönlendiriciler çalışır?
RouterOS 7.21 veya üzeri ve container paketi olan her yönlendirici. İmaj arm, arm64 ve x86 için derlenir ve gerçek arm64 donanımında doğrulanmıştır.
Diske ihtiyacım var mı?
Burada gösterilen basit konteyner kurulumu için hayır. Flash klasörlü kartlar yeniden başlatmada yalnızca o klasörü korur ve blok bunu ele alır.
:latest kullanmak güvenli mi?
Hayır. Kurulum bir imaj etiketi sabitler; böylece yanında olmadığın bir yönlendirici çalıştırdığını sessizce değiştirmez.
Türkçe
Bize her şeyi sorun