Skip to content

NanoPi R4S - OpenWrt kompilieren Teil 2

Angeheftet NanoPi R4S
  • In Teil 1 haben wir ein OpenWrt aus den Quellen kompiliert und heute wollen wir mal schauen, ob das Image rennt 😉

    Unter /home/frank/openwrt/bin/targets/rockchip/armv8 findet man folgendes

    drwxr-xr-x 3 frank frank 4,0K Jan 31 09:40 .
    drwxr-xr-x 3 frank frank 4,0K Jan 31 09:36 ..
    -rw-r--r-- 1 frank frank  117 Jan 31 09:36 config.buildinfo
    -rw-r--r-- 1 frank frank  337 Jan 31 09:36 feeds.buildinfo
    -rw-r--r-- 1 frank frank 8,6M Jan 31 09:40 openwrt-rockchip-armv8-friendlyarm_nanopi-r4s-ext4-sysupgrade.img.gz
    -rw-r--r-- 1 frank frank 2,3K Jan 31 09:40 openwrt-rockchip-armv8-friendlyarm_nanopi-r4s.manifest
    -rw-r--r-- 1 frank frank 7,9M Jan 31 09:40 openwrt-rockchip-armv8-friendlyarm_nanopi-r4s-squashfs-sysupgrade.img.gz
    drwxr-xr-x 2 frank frank 4,0K Jan 31 09:40 packages
    -rw-r--r-- 1 frank frank  644 Jan 31 09:40 sha256sums
    -rw-r--r-- 1 frank frank   20 Jan 31 09:36 version.buildinfo
    

    Das File

    openwrt-rockchip-armv8-friendlyarm_nanopi-r4s-squashfs-sysupgrade.img.gz
    

    interessiert uns. Das packen wir mal aus.

    gunzip openwrt-rockchip-armv8-friendlyarm_nanopi-r4s-squashfs-sysupgrade.img.gz
    

    Nun habe wir das Image was wir brauchen

    openwrt-rockchip-armv8-friendlyarm_nanopi-r4s-squashfs-sysupgrade.img
    

    Das bügeln wir auf eine SD-Karte und ab damit in den NanoPi R4S und einschalten.

    IMG_20210205_162557_ergebnis.jpg

    Zugriff auf den NanoPi R4S

    Als erstes brauchen wir mal Zugriff auf den NanoPi R4S. Dazu benutzen wir ssh

    ssh root@192.168.1.1
    

    Bitte darauf achten, das ihr mit dem Rechner im selben Netz seit. Beim ersten Mal ist das Passwort leer bzw. nicht gesetzt!

    BusyBox v1.31.1 () built-in shell (ash)
    
      _______                     ________        __
     |       |.-----.-----.-----.|  |  |  |.----.|  |_
     |   -   ||  _  |  -__|     ||  |  |  ||   _||   _|
     |_______||   __|_____|__|__||________||__|  |____|
              |__| W I R E L E S S   F R E E D O M
     -----------------------------------------------------
     OpenWrt SNAPSHOT, r15657+2-ec0c6c1143
     -----------------------------------------------------
    === WARNING! =====================================
    There is no root password defined on this device!
    Use the "passwd" command to set up a new password
    in order to prevent unauthorized SSH logins.
    --------------------------------------------------
    

    Webinterface

    2ecdf533-ece1-4790-81c2-52a6ee5d70e6-image.png

    Das Passwort kann man über die Konsole setzen mittels

    passwd
    

    Oder auch im Webinterface unter System/Administration setzen.

    f38566ae-2356-4262-a403-a5beb0f37954-image.png

    htop nachinstallieren

    Jetzt mal schnell htop nachinstallieren, gut zur Kontrolle der vorhanden Cores und des verbauten Speichers.

    opkg uodate
    opkg install htop
    

    Eine Anzeige auf der Konsole mit htop, das nachinstalliert wurde 😉

    9aefdbd5-1446-437f-bf93-85096194e706-image.png

    Zugriff über das WAN Interface

    Nun noch was, für mich Wichtiges. Ich administriere am Liebsten von meinem Haupt-PC aus, also brauchen wir Zugriff auf die WAN-Seite. Kein Problem..

    opkg update
    opkg install nano
    

    Danach

    nano /etc/config/firewall
    

    Ans Ende der Datei folgendes

    onfig rule
            option src              wan
            option dest_port        22
            option target           ACCEPT
            option proto            tcp
    
    config rule
            option src              wan
            option dest_port        80
            option target           ACCEPT
            option proto            tcp
    

    Einmal neustarten und ihr habt Zugriff auf den NanoPi R4S über das WAN Interface.

    Bitte unbedingt entfernen, wenn der NanoPi R4S am Internet hängt!

    Nachinstallation Webinterface

    Und das Webinterface muss man auch installieren. Aber das kennen wir ja schon 😉

    opkg update
    opkg install luci 
    

    Danach kann man das Webinterface unter

    http://192.168.1.1
    

    erreichen, wenn man an der LAN-Schnittstelle eine Notebook anschließt.

    1c85c08e-408d-4732-b8a4-3b0d2711cfa9-image.png

    Teil 1 OpenWrt kompilieren

  • Wir wissen ja alle, das so ein Rockchip RK3399 ordentlich warm wird. Da aber Lüfter bei mir ein Verbot ausgesprochen bekommen, müssen diese SOCs passiv gekühlt werden.

    Das betreibe ich seit Jahren schon mit dem ROCKPro64 mit Erfolg, also sollte das hier auch reichen. Außerdem rechne ich kaum damit, den NanoPi R4S ständig mit Volllast zu betreiben.

    Also mal in den Bastelkisten gesucht und ein Stück Alu Kühlkörper auf die CPU geklebt. Deutlich kann man den Temperaturunterschied merken, So sollte das gut gehen.

    Sollte man den R4S für einen Dauereinsatz planen (24/7) empfehle ich dringend das Alu Gehäuse von FriendlyARM. Das funktioniert perfekt, eines liegt ja hier als Firewall irgendwo in einer Ecke rum 😉

    Das Image ist die ganze Nacht durchgelaufen und heute Morgen war der NanoPi R4S erreichbar. Dann mach ich noch mal ein paar kurze Tests heute Morgen...

  • iperf3 Test

    Haupt-PC <-> NanoPi 4Rs

    Erster Test ist auf der Konsole des NanoPi R4S

    -----------------------------------------------------------
    Server listening on 5201
    -----------------------------------------------------------
    Accepted connection from 192.168.3.208, port 54256
    [  5] local 192.168.3.213 port 5201 connected to 192.168.3.208 port 54258
    [ ID] Interval           Transfer     Bitrate
    [  5]   0.00-1.00   sec   109 MBytes   914 Mbits/sec                  
    [  5]   1.00-2.00   sec   112 MBytes   941 Mbits/sec                  
    [  5]   2.00-3.00   sec   112 MBytes   941 Mbits/sec                  
    [  5]   3.00-4.00   sec   112 MBytes   941 Mbits/sec                  
    [  5]   4.00-5.00   sec   112 MBytes   941 Mbits/sec                  
    [  5]   5.00-6.00   sec   112 MBytes   941 Mbits/sec                  
    [  5]   6.00-7.00   sec   112 MBytes   941 Mbits/sec                  
    [  5]   7.00-8.00   sec   112 MBytes   941 Mbits/sec                  
    [  5]   8.00-9.00   sec   112 MBytes   941 Mbits/sec                  
    [  5]   9.00-10.00  sec   112 MBytes   941 Mbits/sec                  
    [  5]  10.00-10.00  sec   144 KBytes   924 Mbits/sec                  
    - - - - - - - - - - - - - - - - - - - - - - - - -
    [ ID] Interval           Transfer     Bitrate
    [  5]   0.00-10.00  sec  1.09 GBytes   939 Mbits/sec                  receiver
    -----------------------------------------------------------
    Server listening on 5201
    -----------------------------------------------------------
    Accepted connection from 192.168.3.208, port 54260
    [  5] local 192.168.3.213 port 5201 connected to 192.168.3.208 port 54262
    [ ID] Interval           Transfer     Bitrate         Retr  Cwnd
    [  5]   0.00-1.00   sec   114 MBytes   954 Mbits/sec    0    356 KBytes       
    [  5]   1.00-2.00   sec   113 MBytes   944 Mbits/sec    0    356 KBytes       
    [  5]   2.00-3.00   sec   112 MBytes   939 Mbits/sec    0    356 KBytes       
    [  5]   3.00-4.00   sec   113 MBytes   947 Mbits/sec    0    410 KBytes       
    [  5]   4.00-5.00   sec   112 MBytes   938 Mbits/sec    0    410 KBytes       
    [  5]   5.00-6.00   sec   112 MBytes   939 Mbits/sec    0    410 KBytes       
    [  5]   6.00-7.00   sec   113 MBytes   944 Mbits/sec    0    410 KBytes       
    [  5]   7.00-8.00   sec   112 MBytes   941 Mbits/sec    0    410 KBytes       
    [  5]   8.00-9.00   sec   112 MBytes   942 Mbits/sec    0    410 KBytes       
    [  5]   9.00-10.00  sec   112 MBytes   942 Mbits/sec    0    410 KBytes       
    - - - - - - - - - - - - - - - - - - - - - - - - -
    [ ID] Interval           Transfer     Bitrate         Retr
    [  5]   0.00-10.00  sec  1.10 GBytes   943 Mbits/sec    0             sender
    

    Zweiter Test ist von einem Notebook, angeschlossen an die LAN-Schnittstelle.

    -----------------------------------------------------------
    Server listening on 5201
    -----------------------------------------------------------
    Accepted connection from 192.168.3.208, port 42194
    [  5] local 192.168.3.213 port 5201 connected to 192.168.3.208 port 42196
    [ ID] Interval           Transfer     Bitrate
    [  5]   0.00-1.00   sec  97.3 MBytes   816 Mbits/sec                  
    [  5]   1.00-2.00   sec   108 MBytes   903 Mbits/sec                  
    [  5]   2.00-3.00   sec   108 MBytes   903 Mbits/sec                  
    [  5]   3.00-4.00   sec   108 MBytes   905 Mbits/sec                  
    [  5]   4.00-5.00   sec   108 MBytes   904 Mbits/sec                  
    [  5]   5.00-6.00   sec   108 MBytes   904 Mbits/sec                  
    [  5]   6.00-7.00   sec   108 MBytes   906 Mbits/sec                  
    [  5]   7.00-8.00   sec   108 MBytes   905 Mbits/sec                  
    [  5]   8.00-9.00   sec   107 MBytes   901 Mbits/sec                  
    [  5]   9.00-10.00  sec   108 MBytes   902 Mbits/sec                  
    [  5]  10.00-10.03  sec  2.70 MBytes   901 Mbits/sec                  
    - - - - - - - - - - - - - - - - - - - - - - - - -
    [ ID] Interval           Transfer     Bitrate
    [  5]   0.00-10.03  sec  1.04 GBytes   895 Mbits/sec                  receiver
    -----------------------------------------------------------
    Server listening on 5201
    -----------------------------------------------------------
    Accepted connection from 192.168.3.208, port 42200
    [  5] local 192.168.3.213 port 5201 connected to 192.168.3.208 port 42202
    [ ID] Interval           Transfer     Bitrate         Retr  Cwnd
    [  5]   0.00-1.00   sec  97.8 MBytes   821 Mbits/sec    2    758 KBytes       
    [  5]   1.00-2.00   sec   110 MBytes   923 Mbits/sec    0    858 KBytes       
    [  5]   2.00-3.00   sec   111 MBytes   933 Mbits/sec    1    686 KBytes       
    [  5]   3.00-4.00   sec   111 MBytes   933 Mbits/sec    0    805 KBytes       
    [  5]   4.00-5.00   sec   111 MBytes   933 Mbits/sec    1    631 KBytes       
    [  5]   5.00-6.00   sec   111 MBytes   933 Mbits/sec    0    720 KBytes       
    [  5]   6.00-7.00   sec   110 MBytes   923 Mbits/sec    0    786 KBytes       
    [  5]   7.00-8.00   sec   111 MBytes   933 Mbits/sec    0    865 KBytes       
    [  5]   8.00-9.00   sec   111 MBytes   933 Mbits/sec    1    727 KBytes       
    [  5]   9.00-10.00  sec   110 MBytes   923 Mbits/sec    0    820 KBytes       
    [  5]  10.00-10.04  sec  3.75 MBytes   872 Mbits/sec    0    824 KBytes       
    - - - - - - - - - - - - - - - - - - - - - - - - -
    [ ID] Interval           Transfer     Bitrate         Retr
    [  5]   0.00-10.04  sec  1.07 GBytes   919 Mbits/sec    5             sender
    

    Sieht ordentlich aus 🙂

  • iperf3 bidirektional

     root@OpenWrt:~# iperf3 --bidir -c 192.168.3.213
     Connecting to host 192.168.3.213, port 5201
     [  5] local 192.168.3.208 port 54266 connected to 192.168.3.213 port 5201
     [  7] local 192.168.3.208 port 54268 connected to 192.168.3.213 port 5201
     [ ID][Role] Interval           Transfer     Bitrate         Retr  Cwnd
     [  5][TX-C]   0.00-1.00   sec   104 MBytes   871 Mbits/sec    0    827 KBytes       
     [  7][RX-C]   0.00-1.00   sec  77.8 MBytes   652 Mbits/sec                  
     [  5][TX-C]   1.00-2.00   sec   111 MBytes   930 Mbits/sec    0    827 KBytes       
     [  7][RX-C]   1.00-2.00   sec  73.0 MBytes   612 Mbits/sec                  
     [  5][TX-C]   2.00-3.00   sec   110 MBytes   925 Mbits/sec    0    827 KBytes       
     [  7][RX-C]   2.00-3.00   sec  76.4 MBytes   641 Mbits/sec                  
     [  5][TX-C]   3.00-4.00   sec   110 MBytes   926 Mbits/sec    0    865 KBytes       
     [  7][RX-C]   3.00-4.00   sec  74.1 MBytes   621 Mbits/sec                  
     [  5][TX-C]   4.00-5.00   sec   111 MBytes   931 Mbits/sec    0    865 KBytes       
     [  7][RX-C]   4.00-5.00   sec  73.2 MBytes   614 Mbits/sec                  
     [  5][TX-C]   5.00-6.00   sec   109 MBytes   915 Mbits/sec    0    865 KBytes       
     [  7][RX-C]   5.00-6.00   sec  75.7 MBytes   635 Mbits/sec                  
     [  5][TX-C]   6.00-7.00   sec   110 MBytes   924 Mbits/sec    0    865 KBytes       
     [  7][RX-C]   6.00-7.00   sec  72.8 MBytes   610 Mbits/sec                  
     [  5][TX-C]   7.00-8.00   sec   111 MBytes   932 Mbits/sec    0    865 KBytes       
     [  7][RX-C]   7.00-8.00   sec  72.5 MBytes   608 Mbits/sec                  
     [  5][TX-C]   8.00-9.00   sec   110 MBytes   926 Mbits/sec    0    865 KBytes       
     [  7][RX-C]   8.00-9.00   sec  71.3 MBytes   598 Mbits/sec                  
     [  5][TX-C]   9.00-10.00  sec   110 MBytes   926 Mbits/sec    0    865 KBytes       
     [  7][RX-C]   9.00-10.00  sec  73.6 MBytes   617 Mbits/sec                  
     - - - - - - - - - - - - - - - - - - - - - - - - -
     [ ID][Role] Interval           Transfer     Bitrate         Retr
     [  5][TX-C]   0.00-10.00  sec  1.07 GBytes   921 Mbits/sec    0             sender
     [  5][TX-C]   0.00-10.00  sec  1.07 GBytes   919 Mbits/sec                  receiver
     [  7][RX-C]   0.00-10.00  sec   743 MBytes   623 Mbits/sec  211             sender
     [  7][RX-C]   0.00-10.00  sec   740 MBytes   621 Mbits/sec                  receiver
    
  • Kurzes Update. Der R4S im Alugehäuse, der hier als Router / Firewall rumliegt, läuft jetzt seit 44 Tagen einwandfrei. 😊

    98ef6d29-e822-4847-a038-f02a027fb6fe-grafik.png

  • FrankMF FrankM hat dieses Thema am angepinnt

  • NanoPi5 - eMMC

    Verschoben NanoPi R5S
    1
    0 Stimmen
    1 Beiträge
    189 Aufrufe
    Niemand hat geantwortet
  • OpenWrt - LXC Container

    Linux
    4
    0 Stimmen
    4 Beiträge
    611 Aufrufe
    FrankMF

    @Dude Danke für die Tipps. Die Tools waren mir bekannt, auch wenn ich sie noch nicht selber getestet habe. Man kann ja nicht alles ausprobieren 🙂

    Unbound bot sich hier einfach als Test für die LXC Container an.

  • OpenWrt - Docker & DNS & Zugriff auf WAN

    Linux
    4
    0 Stimmen
    4 Beiträge
    425 Aufrufe
    FrankMF

    Es geht weiter, der erste ☕ und ich bin mit der Lösung nicht so richtig zufrieden, also suchen.

    Als erstes habe ich heute Morgen ein frisches SD-Karten Image mit Docker von FreindlyWrt genommen und auf meinem Test NanoPi R5S installiert. Dort mal die Config angeschaut um zu sehen, ob der Eintrag standardmäßig gesetzt ist. Doch dort taucht dann einmal eine ganz ander Config auf 🙄

    # The following settings require a restart of docker to take full effect, A reload will only have partial or no effect: # bip # blocked_interfaces # extra_iptables_args # device config globals 'globals' # option alt_config_file '/etc/docker/daemon.json' option enable '1' option data_root '/mnt/nvme_part2/docker' option log_level 'warn' option iptables '1' #list hosts 'unix:///var/run/docker.sock' # option bip '172.18.0.1/24' # option fixed_cidr '172.17.0.0/16' # option fixed_cidr_v6 'fc00:1::/80' # option ipv6 '1' # option ip '::ffff:0.0.0.0' # list dns '172.17.0.1' # list registry_mirrors 'https://<my-docker-mirror-host>' list registry_mirrors 'https://hub.docker.com' option remote_endpoint '0' # option bridge 'br-container' # Docker ignores fw3 rules and by default all external source IPs are allowed to connect to the Docker host. # See https://docs.docker.com/network/iptables/ for more details. # firewall config changes are only additive i.e firewall will need to be restarted first to clear old changes, # then docker restarted to load in new changes. config firewall 'firewall' option device 'docker0' list blocked_interfaces 'wan' option extra_iptables_args '--match conntrack ! --ctstate RELATED,ESTABLISHED' # allow outbound connections

    Das interessiert uns jetzt

    list blocked_interfaces 'wan' option extra_iptables_args '--match conntrack ! --ctstate RELATED,ESTABLISHED' # allow outbound connections

    Wenn ich das jetzt alles richtig verstehe, muss WAN geblockt sein, weil sonst der Docker Host offen im Netz steht (Hierbei bin ich mir nicht 100% sicher)
    Die zweite Zeile ist eine iptables Regel, die es den Containern dann ermöglicht das Internet zu erreichen.

    Das habe ich jetzt so eingestellt und getestet.

    root@b9ffae24913a:/# ping 1.1.1.1 PING 1.1.1.1 (1.1.1.1): 56 data bytes 64 bytes from 1.1.1.1: icmp_seq=0 ttl=57 time=17.151 ms 64 bytes from 1.1.1.1: icmp_seq=1 ttl=57 time=16.553 ms 64 bytes from 1.1.1.1: icmp_seq=2 ttl=57 time=20.630 ms 64 bytes from 1.1.1.1: icmp_seq=3 ttl=57 time=13.948 ms ^C--- 1.1.1.1 ping statistics --- 4 packets transmitted, 4 packets received, 0% packet loss round-trip min/avg/max/stddev = 13.948/17.071/20.630/2.382 ms root@b9ffae24913a:/# ping google.de PING google.de (142.250.185.195): 56 data bytes 64 bytes from 142.250.185.195: icmp_seq=0 ttl=58 time=23.797 ms 64 bytes from 142.250.185.195: icmp_seq=1 ttl=58 time=16.953 ms 64 bytes from 142.250.185.195: icmp_seq=2 ttl=58 time=19.441 ms ^C--- google.de ping statistics --- 3 packets transmitted, 3 packets received, 0% packet loss round-trip min/avg/max/stddev = 16.953/20.064/23.797/2.829 ms

    Ich hoffe mal das ich diese Thema jetzt zu den Akten legen kann.

    Wenn was falsch ist, bitte hier kommentieren, damit ich das ändern kann.

  • [V] NanoPi R4S - 4GB RAM- incl. Gehäuse

    Verschoben Archiv
    2
    0 Stimmen
    2 Beiträge
    133 Aufrufe
    FrankMF

    Verkauft!

  • NanoPi R4S - OpenWrt upgraden !?

    NanoPi R4S
    4
    0 Stimmen
    4 Beiträge
    533 Aufrufe
    FrankMF

    Ich schrieb ja oben über Daten Sichern bevor man was macht......

    Ok, danach war die Installation lauffähig, aber das Webinterface kaputt. Kryptische Fehlermeldung, die ich auch mit Google nicht fixen konnte. Naja, es war nicht so schwer da ich ja noch einen R4S mit identischer Konfiguration hatte. SD_Karte getauscht und weiter geht's....

    Aber!! Warum? Ich musste ganz schön lange suchen, bis ich heraus fand das es mittlerweile eine neue Version als Release Candidate gibt.

    Link Preview Image [OpenWrt Wiki] OpenWrt 21.02.0-rc1 - First Release Candidate - 26 April 2021

    favicon

    (openwrt.org)

    Diese Version habe ich dann installiert und das Upgrade ist gescheitert. Da ich auf der alten Installation auch schon eine ganze Menge getestet hatte und es evt. auch vermurkst hatte, war es ja nicht so verkehrt mal was frisches aufzusetzen.

    Kurz meine Konfigurationsdateien kontrolliert und nach kleineren Korrekturen und Reboot lief alles wieder wie vorher.

    Diesmal habe ich mir die SD-Karte als Image gesichert. Nur für den Fall, das ich das mal dringend brauche.

    Es bleibt weiterhin nicht ganz einfach eine OpenWrt Installation aktuell zu halten. Aber so einmal im Jahr kann man sich ja die Arbeit machen.....

  • NanoPi R4S - Armbian

    NanoPi R4S
    2
    0 Stimmen
    2 Beiträge
    348 Aufrufe
    FrankMF

    Müsste seit gestern so weit sein 🙂

    b20f93d2-1719-40c5-afb8-6b4edafa6793-image.png

  • NanoPi R2S - OpenWRT VLAN

    Verschoben NanoPi R2S
    11
    0 Stimmen
    11 Beiträge
    1k Aufrufe
    FrankMF

    @thrakath1980 Ok, du meinst die FriendlyArm Variante von OpenWRT. Ich denke, da sollte man besser alles neu machen. Leider ist das bei OpenWRT nicht so einfach zu updaten/upgraden wie z.B. bei einem Linux Kernel. Ich habe es mal runtergeladen, wenn ich mal Zeit habe, schau ich mal rein.

  • NanoPi R2S - OpenWRT

    Verschoben NanoPi R2S
    6
    0 Stimmen
    6 Beiträge
    588 Aufrufe
    FrankMF

    @thrakath1980 Ich wollte noch auf ein Thema zurück kommen. Das Original OpenWRT auf dem R2S ist ja ein Snapshot. Den kann man ohne Probleme aktualisieren. Unten ist dann ein Haken mit "Keep settings...."

    Gerade probiert, ging einwandfrei. Netzwerkeinstellungen und Firewall Settings blieben erhalten.