Po více než 7 měsících vývoje od vydání verze 6.8 byla vydána nová verze 6.9 svobodného open source redakčního systému WordPress. Kódové jméno Gene bylo vybráno na počest amerického jazzového klavíristy Gene Harrise (Ray Brown Trio - Summertime).
Na čem pracují vývojáři webového prohlížeče Ladybird (GitHub)? Byl publikován přehled vývoje za listopad (YouTube).
Google Chrome 143 byl prohlášen za stabilní. Nejnovější stabilní verze 143.0.7499.40 přináší řadu novinek z hlediska uživatelů i vývojářů. Podrobný přehled v poznámkách k vydání. Opraveno bylo 13 bezpečnostních chyb.
Společnost Valve aktualizovala přehled o hardwarovém a softwarovém vybavení uživatelů služby Steam. Podíl uživatelů Linuxu dosáhl 3,2 %. Nejčastěji používané linuxové distribuce jsou Arch Linux, Linux Mint a Ubuntu. Při výběru jenom Linuxu vede SteamOS Holo s 26,42 %. Procesor AMD používá 66,72 % hráčů na Linuxu.
Canonical oznámil (YouTube), že nově nabízí svou podporu Ubuntu Pro také pro instance Ubuntu na WSL (Windows Subsystem for Linux).
Samsung představil svůj nejnovější chytrý telefon Galaxy Z TriFold (YouTube). Skládačka se nerozkládá jednou, ale hned dvakrát, a nabízí displej s úhlopříčkou 10 palců. V České republice nebude tento model dostupný.
Armbian, tj. linuxová distribuce založená na Debianu a Ubuntu optimalizovaná pro jednodeskové počítače na platformě ARM a RISC-V, ke stažení ale také pro Intel a AMD, byl vydán ve verzi 25.11.1. Přehled novinek v Changelogu.
Byla vydána nová verze 15.0 svobodného unixového operačního systému FreeBSD. Podrobný přehled novinek v poznámkách k vydání.
UBports, nadace a komunita kolem Ubuntu pro telefony a tablety Ubuntu Touch, vydala Ubuntu Touch 24.04 1.1 a 20.04 OTA-11. Vedle oprav chyb a drobných vylepšení je řešen také středně závažný bezpečnostní problém.
I letos vyšla řada ajťáckých adventních kalendářů: Advent of Code 2025, Perl Advent Calendar 2025, CSS Advent Calendar 2025, Advent of A11Y 2025, Advent of AI Security 2025, Advent of Agents (in Google) 2025, Advent of Svelte 2025, …
Záleží, co od toho přesně chceš. Nejjednodušší varianta (s ohledem na zátěž serveru a potřebné zásahy) je využít log DHCP serveru. Tj. budeš tam mít kdy si jaký klient žádal o adresu, kdy mu byla která přidělena a kdy ji uvolnil. Samozřejmě je to důvěryhodné natolik, nakolik lze věřit klientům, že se řídí DHCPkem. Navíc ti tam může chybět zpráva o uvolnění adresy pokud jej klient při vypnutí nepošle (pád systému apod.). Ale přinejmenším při příštím přiřazení téhle IP se to pořeší.
Další možností je prostě logovat si ARP cache. (příkazy arp, resp. ip ne; pokud by ti nestačila velikost cache jádra, tak třeba arpd). Výhodou je opět zcela pasivní chování a navíc dost dobrá spolehlivost. Nevidíš tím sice zapnuté počítače, které aktuálně nekomunikují, ale otázkou je, jestli jsou takové vůbec zajímavé.
Ping – no pokud už chceš pingat, tak pokud možno přes ARP ping (umí třeba nmap, pokud je spuštěný s root právy). Výhodou je, že ARP nemůže blokovat žádný firewall, pokud má počítač rozumně fungovat (resp. jo, může mít fixní ARP tabulku, ale to už je trochu mimo normální situace).
#!/bin/bash
# tento skript je delan na to aby ho spustel cron po nejakych
# rozumnych intervalech napr. 15 min
# vkladejte adresy oddelene novym radkem viz. dale
ip_range="
192.168.1.2
192.168.1.3
192.168.1.4
192.168.1.5"
nmap -sP $ip_range -oG IP_temp &> /dev/null
### !!! pokud budete chtit casem pridat adresu do rozsahu pridejte ji do
### !!! promenne $ip_range i do souboru lastping
# zkontroluje jestli existuje soubor lastping
# pokud ne vytvori se a ulozi se do nej adresy z ip_range
if [ ! -f lastping ]; then
touch lastping
declare -a ip
ip=(`echo $ip_range | tr ' ' ' '`)
for each in ${ip[@]}; do
echo "$each" >> lastping
done
fi
# rozparsuje vystup z nmapu a vybere z nej uspesne pingnute ip adresy
while read line; do
echo $line | egrep "Status: Up" | egrep -o "[0-9]{1,3}.[0-9]{1,3}.[0-9]{1,3}.[0-9]{1,3}" >> IP_temp2
done < IP_temp
# funkce vraci informaci o poslednim pingu
# pracuje ze souborem lastping
# jeden parametr ip adresa
function getLastPing() {
hlp=0
while read line; do
if [ "$line" = "$1" ]; then
hlp=1
fi
done < lastping
if [ $hlp == 1 ]; then
echo "1"
return 0
fi
echo "0"
return 0
}
# nacteme promenne s casem
min=`date +%M`
hour=`date +%H`
day=`date +%d`
month=`date +%m`
year=`date +%Y`
# pro kazdou uspesne pingnutou ip ulozi do souboru pojmenovaneho podle ip
# bud cas pokud minuly ping selhal nebo hvezdicku pokud v pingoovani pokracujeme
while read ip; do
# zjistime info o poslednim pingu
lastping=`getLastPing $ip`
# pokud soubor s ip neexistuje
if [ ! -f $ip ]; then
# vytvorime ho
touch $ip
# a na prvni radek pridame info o zacatku testovani
# a info o last pingu nas asi moc nezajima, takze ulozime cas
echo -n "$day.$month.$year $hour:$min " >> $ip
# pokud existuje soubor s ip
else
# zkontrolujeme jestli nezacina novy den
if [ `tail -1 $ip | egrep -c "$day.$month.$year"` == 0 ]; then
# zacal novy den
# porovname lastping
if [ $lastping == 1 ]; then
# pokracujeme takze dame hvezdicku
echo -n "$day.$month.$year *" >> $ip
else
# nepokracujeme takze dame cas
echo -n "$day.$month.$year $hour:$min " >> $ip
fi
else
# novy den nezacal
if [ $lastping == 1 ]; then
# pokracujeme takze dame hvezdicku
echo -n "*" >> $ip
else
# nepokracujeme dame cas
echo -n " $hour:$min " >> $ip
fi
fi
fi
done < IP_temp2
# uklada info o uspesne pinglych adresach do lastping
touch hlpfile
while read line; do
hlp=0
pureIP=`echo "$line" | egrep -o "[0-9]{1,3}.[0-9]{1,3}.[0-9]{1,3}.[0-9]{1,3}"`
while read ip; do
if [ "$pureIP" = "$ip" ]; then
hlp=1
fi
done < IP_temp2
if [ $hlp == 1 ]; then
echo $pureIP >> hlpfile
else
echo "$pureIP !" >> hlpfile
fi
done < lastping
## uklid ##
mv hlpfile lastping
rm IP_temp IP_temp2
Tiskni
Sdílej: