Skip to content

ROCKPro64 - Secondary IP entfernen

ROCKPro64
  • Eben festgestellt, das mein NAS noch mit einem Ubuntu läuft. Damit es hier einheitlich ist, soll das weg 🙂
    Dafür bin ich gerade ein neues System am Aufsetzen. Dabei ist mir was aufgefallen, auch früher schon, aber diesmal soll das weg!

    Image

    Linux rockpro64 4.4.190-1233-rockchip-ayufan-gd3f1be0ed310 #1 SMP Wed Aug 28 08:59:34 UTC 2019 aarch64
    

    Aktualisiert auf Debian Buster 10.1

    Problem

    rock64@rockpro64:~$ ip a
    1: lo: <LOOPBACK,UP,LOWER_UP> mtu 65536 qdisc noqueue state UNKNOWN group default qlen 1
        link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00
        inet 127.0.0.1/8 scope host lo
           valid_lft forever preferred_lft forever
        inet6 ::1/128 scope host 
           valid_lft forever preferred_lft forever
    2: eth0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast state UNKNOWN group default qlen 1000
        link/ether 62:03:b0:d6:dc:b3 brd ff:ff:ff:ff:ff:ff
        inet 192.168.3.2/24 brd 192.168.3.255 scope global dynamic eth0
           valid_lft 7191sec preferred_lft 7191sec
        inet 192.168.3.4/24 brd 192.168.3.255 scope global secondary noprefixroute eth0
           valid_lft forever preferred_lft forever
        inet6 2a02:908:1266:9690:xxxxxxxxxxxxxxxxxx/64 scope global dynamic mngtmpaddr noprefixroute 
           valid_lft 7189sec preferred_lft 589sec
        inet6 fe80::6003:b0ff:fed6:dcb3/64 scope link 
           valid_lft forever preferred_lft forever
    

    Ich habe auf der LAN-Schnittstelle zwei IP-Adressen.

    inet 192.168.3.2/24 brd 192.168.3.255 scope global dynamic eth0
    inet 192.168.3.4/24 brd 192.168.3.255 scope global secondary noprefixroute eth0
    

    Die secondary brauch ich nicht. Ok, ein wenig gegoogelt und dann folgendes eingegeben.

    systemctl stop dhcpcd
    systemctl disable dhcpcd
    

    Danach neustarten

    reboot
    

    Dann schauen wir mal nach.

    rock64@rockpro64:~$ ip a
    1: lo: <LOOPBACK,UP,LOWER_UP> mtu 65536 qdisc noqueue state UNKNOWN group default qlen 1
        link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00
        inet 127.0.0.1/8 scope host lo
           valid_lft forever preferred_lft forever
        inet6 ::1/128 scope host 
           valid_lft forever preferred_lft forever
    2: eth0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast state UNKNOWN group default qlen 1000
        link/ether 62:03:b0:d6:dc:b3 brd ff:ff:ff:ff:ff:ff
        inet 192.168.3.2/24 brd 192.168.3.255 scope global dynamic eth0
           valid_lft 7193sec preferred_lft 7193sec
        inet6 2a02:908:1266:9690:xxxxxxxxxxxxxxx/64 scope global dynamic mngtmpaddr 
           valid_lft 7198sec preferred_lft 598sec
        inet6 fe80::6003:b0ff:fed6:dcb3/64 scope link 
           valid_lft forever preferred_lft forever
    

    Gut, sie ist weg 😉

    Warum das so ist, weiß ich nicht. Für mich macht ein dhcpd da aktuell keinen Sinn!?!? Ich möchte ja keinen Clients Adressen zuteilen. Wenn ich völlig daneben liege, bitte ich um Korrektur.

  • Hoppla, etwas aus der Übung. Mit dem letzten Release 0.9.16 gibt es dieses Problem nicht mehr.

    Das scheint nicht immer der Fall zu sein!

    Gerade nach einer Neuinstallation schon wieder zwei IP-Adressen.

  • Ich grabe das Thema noch mal aus.

    Oben habe ich den Dienst dhcpcd ausgeschaltet. Dieser sorgt dafür, das wir zwei IP-Adressen auf der Schnittstelle haben. Aber, ein kleiner feiner Denkfehler von mir, der Dienst dhcpcd ist nicht gleich Dienst dhcpd !!

    dhcpcd

    Welcome to the project page for dhcpcd, a DHCP and DHCPv6 client.

    Wenn ich diesen Dienst auf folgendem Image abschalte, dann bekomme ich nicht mehr die zweite IP, der ROCKPro64 holt sich aber immer noch per DHCP eine Adresse!?? Welcher Dienst ist dafür verantwortlich??

    pstree

    Nach dem Abschalten, sieht das so aus.

    root@rockpro64:~# pstree
    systemd-+-NetworkManager---2*[{NetworkManager}]
            |-2*[agetty]
            |-alsactl
            |-avahi-daemon---avahi-daemon
            |-cron
            |-dbus-daemon
            |-dhclient
            |-dhcpd
            |-ntpd---{ntpd}
            |-polkitd---2*[{polkitd}]
            |-rsyslogd---3*[{rsyslogd}]
            |-sshd---sshd---sshd---bash---su---bash---pstree
            |-systemd---(sd-pam)
            |-systemd-journal
            |-systemd-logind
            |-systemd-udevd
            `-wpa_supplicant
    

    Hier sieht man das ich einen dhpcd am Laufen habe, der auch artig Adressen verteilt. Hmm, was ich immer noch nicht verstehe, wer macht denn jetzt den DHCP für den Client? Networkmanager? systemd?

    Wird fortgesetzt....

  • Hallo Frank,

    also ich hatte auf meiner installation dhcpcd5 mit apt remove --purge dhcpcd5 deinstalliert und in /etc/network/interfaces.d/eth0 die statische Konfiguration zugefügt.

    Evtl. kann es auch noch zusätzlich sein das der dhcpcd durch einen upgrade wieder aktiviert wurde, habe ich halt auch schon mal gesehen.

    Den dhcpd brauchst du vermutlich auch nicht, wenn du nicht neben deinem router IPs verteilen möchtest.

    Evtl. hast du auch noch das Paket isc-dhcp-client installiert, aber das stört üblicherweise nicht da es der dhclient dort nicht als daemon läuft.

    Gruß
    Martin

  • Hallo @mabs,

    es ging bei meinem Post gar nicht um den dhcpd, also den Daemon der die Adressen verteilt. Hintergrund, ich versuche gerade mal wieder einen Router auf Basis eines ROCKPro64 zu bauen. Dabei bin ich in Kamils Debian Minimal über die zweite IP-Adresse gestolpert.

    Danke aber für deine Anregungen.

    Es gibt da aber wohl mit dem Debian Minimal irgendwelche Probleme mit dem Forwarding, so das ich das jetzt auf einem Bionic mache, dort klappt das einwandfrei. Aber dazu später ausführlich in einem anderen Thread.

  • 0 Stimmen
    1 Beiträge
    85 Aufrufe
    Niemand hat geantwortet
  • Serielle Konsole UART2 (2)

    Angeheftet Hardware
    1
    0 Stimmen
    1 Beiträge
    212 Aufrufe
    Niemand hat geantwortet
  • VON USB 4TB HD BOOTEN GEHT NICHT

    ROCKPro64
    5
    0 Stimmen
    5 Beiträge
    563 Aufrufe
    W

    Hallo FrankM,
    schade das Du mir nicht weiter helfen kannst, aber danke für Deine schnelle Antwort.
    Mit dem Bugreport kenne ich nicht aus, bin noch leihe.

    Einen schönen Abend noch.

    Winne

  • ROCKPro64 Armbian Image - erster Test

    Verschoben Armbian
    13
    0 Stimmen
    13 Beiträge
    2k Aufrufe
    FrankMF

    Erster dicker Fehlschlag mit Armbian 😞

    Heute versucht mein NAS mit Armbian aufzusetzen. Raid einbinden usw. kein Problem. Als es dann an Restic und GO ging war es vorbei mit lustig. Pakete zu alt, Quellen eingebunden und nur noch Fehler. Hmm!?

    Da ich nach zwei Stunden keine Lust mehr hatte, habe ich das erst mal auf Eis gelegt. Manchmal ist es besser an einem anderen Tag noch mal von vorne anzufangen.

    Nun läuft das NAS wieder mit

    rock64@rockpro64v_2_1:~$ uname -a Linux rockpro64v_2_1 4.19.0-rc4-1071-ayufan-g10a63ec6c2a2 #1 SMP PREEMPT Mon Oct 1 07:33:40 UTC 2018 aarch64 aarch64 aarch64 GNU/Linux

    So schlecht läuft das ja nicht, wenn denn mal die USB3 Schnittstelle vernünftig laufen würde.

    Update: Manchmal muss man es auch richtig machen 🙂 https://forum.frank-mankel.org/topic/420/rockpro64-armbian-go-restic-installieren

  • ROCKPro64 - Docker Image

    ROCKPro64
    4
    0 Stimmen
    4 Beiträge
    1k Aufrufe
    FrankMF

    Das ganze hat einen furchtbar schönen Vorteil. Mal angenommen, ich habe ein NodeBB-Forum in einem Container laufen. Will das Ding updaten und das crasht einfach mal so. Egal, Container stoppen, Container starten und alles läuft wieder.

    Mit dem Commit sichere ich mir dann den Zustand nachdem ich weiß, das alles klappt 🙂

  • ROCKPro64 - RP64.GPIO

    Angeheftet Verschoben Hardware
    6
    0 Stimmen
    6 Beiträge
    6k Aufrufe
    FrankMF

    Hallo zusammen,

    da ich weiß das dieser Artikel recht beliebt ist, wollen wir den heute mal aktualisieren. Vieles aus den vorherigen Beiträgen passt noch. Es gibt aber kleine Anpassungen.

    Hardware ROCKPro64v21. 2GB RAM Software Kamils Release 0.10.9 Linux rockpro64 5.6.0-1132-ayufan-g81043e6e109a #ayufan SMP Tue Apr 7 10:07:35 UTC 2020 aarch64 GNU/Linux Installation apt install python

    Danach laden wir das Projekt

    git clone https://github.com/Leapo/Rock64-R64.GPIO

    PIN Nummern anpassen

    cd Rock64-R64.GPIO/R64 nano _GPIO.py

    Datei ergänzen

    # Define GPIO arrays #ROCK_valid_channels = [27, 32, 33, 34, 35, 36, 37, 38, 64, 65, 67, 68, 69, 76, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, 96, 97, 98, 100, 101, 102, 103, 104] #BOARD_to_ROCK = [0, 0, 0, 89, 0, 88, 0, 0, 64, 0, 65, 0, 67, 0, 0, 100, 101, 0, 102, 97, 0, 98, 103, 96, 104, 0, 76, 68, 69, 0, 0, 0, 38, 32, 0, 33, 37, 34, 36, 0, 35, 0, 0, 81, 82, 87, 83, 0, 0, 80, 79, 85, 84, 27, 86, 0, 0, 0, 0, 0, 0, 89, 88] #BCM_to_ROCK = [68, 69, 89, 88, 81, 87, 83, 76, 104, 98, 97, 96, 38, 32, 64, 65, 37, 80, 67, 33, 36, 35, 100, 101, 102, 103, 34, 82] ROCK_valid_channels = [52,53,152,54,50,33,48,39,41,43,155,156,125,122,121,148,147,120,36,149,153,42,45,44,124,126,123,127] BOARD_to_ROCK = [0,0,0,52,0,53,0,152,148,0,147,54,120,50,0,33,36,0,149,48,0,39,153,41,42,0,45,43,44,155,0,156,124,125,0,122,126,121,123,0,127] BCM_to_ROCK = [43,44,52,53,152,155,156,45,42,39,48,41,124,125,148,147,124,54,120,122,123,127,33,36,149,153,121,50]

    Abspeichern.

    Datei test.py anlegen

    nano test.py

    Inhalt

    #!/usr/bin/env python # Frank Mankel, 2018, LGPLv3 License # Rock 64 GPIO Library for Python # Thanks Allison! Thanks smartdave! import R64.GPIO as GPIO from time import sleep print("Output Test R64.GPIO Module...") # Set Variables var_gpio_out = 156 var_gpio_in = 155 # GPIO Setup GPIO.setwarnings(True) GPIO.setmode(GPIO.ROCK) GPIO.setup(var_gpio_out, GPIO.OUT, initial=GPIO.HIGH) # Set up GPIO as an output, with an initial state of HIGH GPIO.setup(var_gpio_in, GPIO.IN, pull_up_down=GPIO.PUD_UP) # Set up GPIO as an input, pullup enabled # Test Output print("") print("Testing GPIO Input/Output:") while True: var_gpio_state_in = GPIO.input(var_gpio_in) var_gpio_state = GPIO.input(var_gpio_out) # Return State of GPIO if var_gpio_state == 0 and var_gpio_state_in == 1: GPIO.output(var_gpio_out,GPIO.HIGH) # Set GPIO to HIGH print("Input State: " + str(var_gpio_state_in)) # Print results print("Output State IF : " + str(var_gpio_state)) # Print results else: GPIO.output(var_gpio_out,GPIO.LOW) # Set GPIO to LOW print("Input State: " + str(var_gpio_state_in)) # Print results print("Output State ELSE: " + str(var_gpio_state)) # Print results sleep(0.5) exit() Beispiel

    Bild Text

    Wenn der Taster im Bild betätigt wird, soll die LED blinken.

    Wir benutzen folgende Ein- Augänge des ROCKPro64.

    # Set Variables var_gpio_out = 156 var_gpio_in = 155

    Das heißt:

    an Pin 1 (3,3V) kommt eine Strippe des Tasters an Pin 29 (Input) kommt eine Strippe des Tasters an Pin 31 (Output) kommt der Plus-Pol der LED an Pin 39 (GND) kommt der Minus-Pol der LED

    Somit wird auf den Eingang (Pin 29) bei Betätigung des Tasters 3,3 Volt angelegt. Damit wird dann der Eingang als High (1) erkannt. Die LED wird über den Ausgang (Pin 31) gesteuert.

    Starten kann man das Script mit

    python test.py

  • ROCKPro WLan Modul

    Verschoben ROCKPro64
    1
    0 Stimmen
    1 Beiträge
    689 Aufrufe
    Niemand hat geantwortet
  • DTS DTB Files bearbeiten

    Angeheftet ROCKPro64
    3
    0 Stimmen
    3 Beiträge
    1k Aufrufe
    FrankMF

    Oder, ganz einfach

    sudo dtedit

    🙂