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

  • 0 Stimmen
    4 Beiträge
    286 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.

  • NanoPi R4S - OpenWrt Image

    NanoPi R4S
    1
    0 Stimmen
    1 Beiträge
    219 Aufrufe
    Niemand hat geantwortet
  • 0 Stimmen
    1 Beiträge
    130 Aufrufe
    Niemand hat geantwortet
  • OpenWrt mit Suricata?

    NanoPi R4S
    7
    0 Stimmen
    7 Beiträge
    555 Aufrufe
    FrankMF

    @fbi-student Danke für die Infos. Ich hatte mich schon gewundert, wofür man als "privater" Anwender den Aufwand betreibt.

  • NanoPi R4S - Armbian Buster

    NanoPi R4S
    1
    0 Stimmen
    1 Beiträge
    237 Aufrufe
    Niemand hat geantwortet
  • 0 Stimmen
    2 Beiträge
    372 Aufrufe
    FrankMF

    Ja, ich kann bestätigen, es funktioniert und startet einwandfrei!

  • NanoPi R4S - Armbian

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

    Müsste seit gestern so weit sein 🙂

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

  • NanoPi R4S

    Angeheftet Verschoben NanoPi R4S
    10
    0 Stimmen
    10 Beiträge
    870 Aufrufe
    FrankMF

    Kleiner Tipp, FriendlyARM anschreiben und nach schnellerem Versand fragen (keine Optionen im Online Shop) Hat mich 10$ gekostet, kam mit FedEX und hat am 29.1 China verlassen. Am 05.02.2021 bei mir 😉