Portál AbcLinuxu, 8. května 2025 20:59
Řešení dotazu:
#!/bin/bash export MOUNT="/cesta/k/nfs/svazku" if ! ping -c 1 192.168.0.1 ; then umount -f -l $MOUNT else if grep -qs $MOUNT /proc/mounts; then echo "OK" else mount $MOUNT; fi fi
/etc/NetworkManager/dispatcher.d
. Skript má k dispozici informace o tom, které připojení to bylo a co se s ním stalo.
Jak moc spolehlivě se dá ta určitá síť detekovat?Nevím, jestli jsem se vyjádřil dostatečně jasně, NetworkManager v tuto chvíli drátové sítě nedetekuje. V tomto případě je potřeba, aby skript provedl detekci sám ať už z údajů od NetworkManageru nebo údajů, které si sám zjistí.
Jde např. nějak jednouše zjistit MAC adresu default-gw?Dá se to vypreparovat třeba i z výstupu
arping
, ale třeba se najde elegantnější způsob. Pokud už probíhala nějaká komunikace, tak ip neighbor
.
Hm,úplně ideální by bylo nějaký kryptografický ověření, že je člověk ve správné síti, ale to je asi z říše scifi...To by asi nebyl velký problém. Kromě standardních nástrojů (802.1x, které myslím NM nezvládne připojit automaticky právě proto, že sítě nedetekuje) si může člověk zkusit s tou bránou popovídat po nějakém zabezpečeném protokolu. Brána pak může přijímat spojení pouze z lokální sítě. V podstatě by na to mělo stačit SSH.
Tiskni
Sdílej:
ISSN 1214-1267, (c) 1999-2007 Stickfish s.r.o.