1

Temat: Zwolnienie dzierżawy IP DHCP na LAN

Cześć,
mam pytanie czy istnieje jakaś magiczna metoda w OpenWRT albo jakiś tools do zwolnienia komendą dzierżawy IP po DHCP na LAN?

Na teraz robię to przez:
- /etc/init.d/dnsmasq stop
- wywalam daną linię w /var/dhcp.leases
- /etc/init.d/dnsmasq start

No ale trochę tak to 'uciążliwe' ...

Pozdr,

Banana Pi BPI-R3 + SFP GPON ONT Nokia G-010S-A + LTE FIBOCOM L860-GL-16 (OpenWrt 25.12-SNAPSHOT, kernel 6.12.71)
Zyxel T56 EX5601-T1 (OpenWrt 25.12-SNAPSHOT, kernel 6.12.85)
Xiaomi AX3600 (OpenWrt EDMA-NSS SNAPSHOT, kernel 6.18.38)
OpenWRT NSS and EDMA-NSS builds for Xiaomi AX3600 (IPQ8074) by @Payti

2

Odp: Zwolnienie dzierżawy IP DHCP na LAN

Chyba nie ma innej możliwości z poziomu samego dnsmasq to zrobić.

Masz niepotrzebny router, uszkodzony czy nie - chętnie przygarnę go.

3

Odp: Zwolnienie dzierżawy IP DHCP na LAN

@Payti
Zrób z tego skrypt, który szuka w pliku nazwy DNS lub adresu MAC karty:

rel.sh

#!/bin/sh

/etc/init.d/dnsmasq stop
grep -v "debian" /var/dhcp.leases > tmpfile && mv tmpfile /var/dhcp.leases
/etc/init.d/dnsmasq start

chmod +x rel.sh
Odpalasz tak: sh rel.sh

4

Odp: Zwolnienie dzierżawy IP DHCP na LAN

ewentualnie można wrzucić taki czy podobny skrypt do np.  /usr/bin  i odpalać jako polecenie systemowe bez dodatku  sh

Xiaomi AX3000T @ Netgear R6220
* DVBT2 - T230C *

5 (edytowany przez Payti 2024-10-07 19:14:19)

Odp: Zwolnienie dzierżawy IP DHCP na LAN

Z tym skryptem np. releaseip i wrzuceniem do /usr/bin to fajny pomysł.
Jak by miał wyglądać skrypt by podawać IP jako argument?
Np. komenda releaseip 20.0.0.153 i by zwolnić adres 20.0.0.153 ?

Czy tak ?

#!/bin/sh

/etc/init.d/dnsmasq stop
grep -v "$0" /var/dhcp.leases > tmpfile && mv tmpfile /var/dhcp.leases
/etc/init.d/dnsmasq start
Banana Pi BPI-R3 + SFP GPON ONT Nokia G-010S-A + LTE FIBOCOM L860-GL-16 (OpenWrt 25.12-SNAPSHOT, kernel 6.12.71)
Zyxel T56 EX5601-T1 (OpenWrt 25.12-SNAPSHOT, kernel 6.12.85)
Xiaomi AX3600 (OpenWrt EDMA-NSS SNAPSHOT, kernel 6.18.38)
OpenWRT NSS and EDMA-NSS builds for Xiaomi AX3600 (IPQ8074) by @Payti

6

Odp: Zwolnienie dzierżawy IP DHCP na LAN

Może tak być.

Masz niepotrzebny router, uszkodzony czy nie - chętnie przygarnę go.

7 (edytowany przez Payti 2024-10-07 19:16:24)

Odp: Zwolnienie dzierżawy IP DHCP na LAN

Dobra zrobiłem skrypt j/w.
Tak jak powyżej nie działa, nie zwalnia IP 20.0.0.235 ...
Co jest źle w podaniu argumentu do grep -v ?

W OpenWRT grep ma :

root@BananaPi_BPi-R3 /root [#]# grep -v
BusyBox v1.36.1 (2024-02-19 19:52:06 UTC) multi-call binary.

Usage: grep [-HhnlLoqvsrRiwFE] [-m N] [-A|B|C N] { PATTERN | -e PATTERN... | -f FILE... } [FILE]...

Search for PATTERN in FILEs (or stdin)

        -H      Add 'filename:' prefix
        -h      Do not add 'filename:' prefix
        -n      Add 'line_no:' prefix
        -l      Show only names of files that match
        -L      Show only names of files that don't match
        -c      Show only count of matching lines
        -o      Show only the matching part of line
        -q      Quiet. Return 0 if PATTERN is found, 1 otherwise
        -v      Select non-matching lines
        -s      Suppress open and read errors
        -r      Recurse
        -R      Recurse and dereference symlinks
        -i      Ignore case
        -w      Match whole words only
        -x      Match whole lines only
        -F      PATTERN is a literal (not regexp)
        -E      PATTERN is an extended regexp
        -m N    Match up to N times per file
        -A N    Print N lines of trailing context
        -B N    Print N lines of leading context
        -C N    Same as '-A N -B N'
        -e PTRN Pattern to match
        -f FILE Read pattern from file
root@BananaPi_BPi-R3 /root [#]#
Banana Pi BPI-R3 + SFP GPON ONT Nokia G-010S-A + LTE FIBOCOM L860-GL-16 (OpenWrt 25.12-SNAPSHOT, kernel 6.12.71)
Zyxel T56 EX5601-T1 (OpenWrt 25.12-SNAPSHOT, kernel 6.12.85)
Xiaomi AX3600 (OpenWrt EDMA-NSS SNAPSHOT, kernel 6.18.38)
OpenWRT NSS and EDMA-NSS builds for Xiaomi AX3600 (IPQ8074) by @Payti

8

Odp: Zwolnienie dzierżawy IP DHCP na LAN

grep -v "20.0.0.235" /var/dhcp.leases

co ci wypisuje?  Z czy be 20.0.0.235?

Masz niepotrzebny router, uszkodzony czy nie - chętnie przygarnę go.

9 (edytowany przez Payti 2024-10-07 19:22:57)

Odp: Zwolnienie dzierżawy IP DHCP na LAN

grep -v "20.0.0.235" /var/dhcp.leases wypisuje wynik bez linii z IP 20.0.0.235

Banana Pi BPI-R3 + SFP GPON ONT Nokia G-010S-A + LTE FIBOCOM L860-GL-16 (OpenWrt 25.12-SNAPSHOT, kernel 6.12.71)
Zyxel T56 EX5601-T1 (OpenWrt 25.12-SNAPSHOT, kernel 6.12.85)
Xiaomi AX3600 (OpenWrt EDMA-NSS SNAPSHOT, kernel 6.18.38)
OpenWRT NSS and EDMA-NSS builds for Xiaomi AX3600 (IPQ8074) by @Payti

10

Odp: Zwolnienie dzierżawy IP DHCP na LAN

Czyli działa jak powinno. Dodaj sobie jeszcze w obu miejscach /tmp/tmpfile a nie samo tmpfile

Masz niepotrzebny router, uszkodzony czy nie - chętnie przygarnę go.

11

Odp: Zwolnienie dzierżawy IP DHCP na LAN

Ok, zrobiłem tak:

#!/bin/sh

/etc/init.d/dnsmasq stop
grep -v "$0" /var/dhcp.leases > /tmp/tmpfile && mv /tmp/tmpfile /var/dhcp.leases
/etc/init.d/dnsmasq start

ale dalej nie zwalnia IP 20.0.0.235, cos nie tak jest z tym mv nowego pliku ...

Banana Pi BPI-R3 + SFP GPON ONT Nokia G-010S-A + LTE FIBOCOM L860-GL-16 (OpenWrt 25.12-SNAPSHOT, kernel 6.12.71)
Zyxel T56 EX5601-T1 (OpenWrt 25.12-SNAPSHOT, kernel 6.12.85)
Xiaomi AX3600 (OpenWrt EDMA-NSS SNAPSHOT, kernel 6.18.38)
OpenWRT NSS and EDMA-NSS builds for Xiaomi AX3600 (IPQ8074) by @Payti

12 (edytowany przez Payti 2024-10-07 19:35:21)

Odp: Zwolnienie dzierżawy IP DHCP na LAN

Ta komenda generuje plik /tmp/tmpfile ok:

grep -v "20.0.0.235" /var/dhcp.leases > /tmp/tmpfile

a ta kopiuje i podmienia ok

mv /tmp/tmpfile /var/dhcp.leases

Hm ... nie wiem czemu nie działa dobrze to ...

Banana Pi BPI-R3 + SFP GPON ONT Nokia G-010S-A + LTE FIBOCOM L860-GL-16 (OpenWrt 25.12-SNAPSHOT, kernel 6.12.71)
Zyxel T56 EX5601-T1 (OpenWrt 25.12-SNAPSHOT, kernel 6.12.85)
Xiaomi AX3600 (OpenWrt EDMA-NSS SNAPSHOT, kernel 6.18.38)
OpenWRT NSS and EDMA-NSS builds for Xiaomi AX3600 (IPQ8074) by @Payti

13

Odp: Zwolnienie dzierżawy IP DHCP na LAN

Eech, zamiast $0 daj $1.  $0 to nazwa programu a nie argument.

Masz niepotrzebny router, uszkodzony czy nie - chętnie przygarnę go.

14 (edytowany przez Payti 2024-10-07 19:39:02)

Odp: Zwolnienie dzierżawy IP DHCP na LAN

Cezary napisał/a:

Eech, zamiast $0 daj $1.  $0 to nazwa programu a nie argument.

No i bingo.

Taki skrypt /usr/bin/releaseip i wywołanie np. releaseip 20.0.0.235 działa super:

#!/bin/sh

/etc/init.d/dnsmasq stop
grep -v "$1" /var/dhcp.leases > /tmp/tmpfile && mv /tmp/tmpfile /var/dhcp.leases
/etc/init.d/dnsmasq start

Dzięki za wskazówki.

Banana Pi BPI-R3 + SFP GPON ONT Nokia G-010S-A + LTE FIBOCOM L860-GL-16 (OpenWrt 25.12-SNAPSHOT, kernel 6.12.71)
Zyxel T56 EX5601-T1 (OpenWrt 25.12-SNAPSHOT, kernel 6.12.85)
Xiaomi AX3600 (OpenWrt EDMA-NSS SNAPSHOT, kernel 6.18.38)
OpenWRT NSS and EDMA-NSS builds for Xiaomi AX3600 (IPQ8074) by @Payti