sudo-rs, tj. sudo a su přepsáné do programovacího jazyka Rust, nahradí v Ubuntu 25.10 klasické sudo. V plánu je také přechod od klasických coreutils k uutils coreutils napsaných v Rustu.
Fedora se stala oficiální distribucí WSL (Windows Subsystem for Linux).
Společnost IBM představila server IBM LinuxONE Emperor 5 poháněný procesorem IBM Telum II.
Byla vydána verze 4.0 multiplatformního integrovaného vývojového prostředí (IDE) pro rychlý vývoj aplikaci (RAD) ve Free Pascalu Lazarus (Wikipedie). Přehled novinek v poznámkách k vydání. Využíván je Free Pascal Compiler (FPC) 3.2.2.
Podpora Windows 10 končí 14. října 2025. Připravovaná kampaň Konec desítek (End of 10) může uživatelům pomoci s přechodem na Linux.
Již tuto středu proběhne 50. Virtuální Bastlírna, tedy dle římského číslování L. Bude L značit velikost, tedy více diskutujících než obvykle, či délku, neboť díky svátku lze diskutovat dlouho do noci? Bude i příští Virtuální Bastlírna virtuální nebo reálná? Nejen to se dozvíte, když dorazíte na diskuzní večer o elektronice, softwaru, ale technice obecně, který si můžete představit jako virtuální posezení u piva spojené s učenou
… více »Český statistický úřad rozšiřuje Statistický geoportál o Datový portál GIS s otevřenými geografickými daty. Ten umožňuje stahování datových sad podle potřeb uživatelů i jejich prohlížení v mapě a přináší nové možnosti v oblasti analýzy a využití statistických dat.
Kevin Lin zkouší využívat chytré brýle Mentra při hraní na piano. Vytváří aplikaci AugmentedChords, pomocí které si do brýlí posílá notový zápis (YouTube). Uvnitř brýlí běží AugmentOS (GitHub), tj. open source operační systém pro chytré brýle.
Jarní konference EurOpen.cz 2025 proběhne 26. až 28. května v Brandýse nad Labem. Věnována je programovacím jazykům, vývoji softwaru a programovacím technikám.
mám dvě připojení a potřebuji aby každé ze dvou navázaných spojení šlo přes jiného ISP.
Našel jsem šikovný návod jak toho dosáhnout.
Označkoval jsem si tedy pakety s cílovým portem 60353 a 60354 značkou 100 resp. 101:
debian:~# iptables -L -t mangle Chain PREROUTING (policy ACCEPT) target prot opt source destination MARK udp -- anywhere anywhere udp dpt:60353 MARK xset 0x64/0xffffffff MARK udp -- anywhere anywhere udp dpt:60354 MARK xset 0x65/0xffffffff MARK tcp -- anywhere anywhere tcp dpt:60353 MARK xset 0x64/0xffffffff MARK tcp -- anywhere anywhere tcp dpt:60354 MARK xset 0x65/0xffffffff
Vytvořil jsem si dvě routovací tabulky podle defaultní brány a udělal pravidlo které pošle označkované pakety na příslušnou bránu:
debian:~# ip route ls table cdma default via 10.160.3.42 dev ppp1 debian:~# ip route ls table umts default via 10.6.6.6 dev ppp0 debian:~# debian:~# ip rule ls 0: from all lookup local 32764: from all fwmark 0x65 lookup cdma 32765: from all fwmark 0x64 lookup umts 32766: from all lookup main 32767: from all lookup default debian:~#Problém je, že když smažu defaultní routu z hlavní routovací tabulky, tak spojení vůbec nenavážu. Např. tcptraceroute píše "Network is unreachable".
Smazat default route z tabulky main
není moc dobrý nápad, protože potom neoznačkované pakety nebude možné směrovat vůbec. Pochybuji, že byste veškerý provoz chtěl posílat výhradně jen na ty dva (resp. čtyři) porty, co třeba DNS dotazy?
Ještě jeden nápad: nezkoušel jste to spojení navazovat ze svého počítače? Pak by byl problém v tom, že lokálně generované pakety neprocházejí řetězcem PREROUTING
.
A proč to dělám?
Potřebuju "spojit" dvě pomalá internetová spojení do jednoho rychlejšího.
To bohužel nepůjde, jde o počítač bez veřejné adresy. ... ještě mě napadlo že by to mohla dělat cache routovaci tabulky
To bohužel nepůjde, jde o počítač bez veřejné adresy
Jak to souvisí s tím, na co reagujete?
Jestli lokálně generované lokálně neprocházejí chainem PREROUTING tak se nemůžou označkovat a tudíž nepůjdou na správnou bránu - to by to celé vysvětlovalo.
Budu to moct vyzkoušet až večer, tak jsem zvědav.
Zkusil jsem si oznacit pakety v retezci OUTPUT:
debian:/home/houska# iptables -t mangle -L Chain PREROUTING (policy ACCEPT) target prot opt source destination Chain INPUT (policy ACCEPT) target prot opt source destination Chain FORWARD (policy ACCEPT) target prot opt source destination Chain OUTPUT (policy ACCEPT) target prot opt source destination MARK udp -- anywhere anywhere udp dpt:60353 MARK xset 0x64/0xffffffff MARK udp -- anywhere anywhere udp dpt:60354 MARK xset 0x65/0xffffffff MARK tcp -- anywhere anywhere tcp dpt:60353 MARK xset 0x64/0xffffffff MARK tcp -- anywhere anywhere tcp dpt:60354 MARK xset 0x65/0xffffffffroutovaci tabulky mam dve a pravidlo mam taky nastavene:
debian:/home/houska# ip route ls table cdma default via 10.160.3.42 dev ppp1 debian:/home/houska# ip route ls table umts default via 10.6.6.6 dev ppp0 debian:/home/houska# debian:/home/houska# ip rule ls 0: from all lookup local 32764: from all fwmark 0x65 lookup cdma 32765: from all fwmark 0x64 lookup umts 32766: from all lookup main 32767: from all lookup default debian:/home/houska#V hlavni routovaci tabulce defaultni routu nemam. OpenVPN i tcptraceroute (oboje zkousene na stejnem portu), hlasi shodne:
debian:/home/houska# tcptraceroute 62.84.145.5 60354 connect: Network is unreachable debian:/home/houska# debian:/home/houska# grep unreachable /etc/openvpn/client1-pri.log | tail -n3 Fri May 15 17:48:11 2009 write UDPv4 []: Network is unreachable (code=101) Fri May 15 17:48:13 2009 write UDPv4 []: Network is unreachable (code=101) Fri May 15 17:48:16 2009 write UDPv4 []: Network is unreachable (code=101) debian:/home/houska#
OUTPUT
v tomto případě bohužel nepomůže, protože tím paket prochází až poté, co se rozhodne o jeho směrování (jinak bychom nemohli znát odchozí rozhraní). Jako náhražku by v tomto případě mělo být možné použít akci ROUTE
netfilteru.
To jste mě moc nepotěšil ... ze zdrojáků debianu byla podpora z netfiltru odstraněná na podzim 07 :( vrrr
Každopádně díky moc za pomoc.
Nasel jsem patch-o-matic, ktery je bohuzel dlouho neudrzovany.
Pak jsem objevil xtables-addons a nebo zde, ktery se tvari jako nastupce P-O-M a je docela cerstvy a udrzovany. Bohuzel zatim nepodporuje -j ROUTE. Nedalo mi to a napsal jsem do konference zda se tato podpora chysta.
Vyvojar xtables-addons mi odpovedel ze po omarkovani je paket znovu routovan ... coz odporuje me zkusenosti.
... tak uvidimeVyvojar xtables-addons mi odpovedel ze po omarkovani je paket znovu routovan ... coz odporuje me zkusenosti.
Takhle to určitě funguje, pokud dojde ke změně cílové adresy v nat.OUTPUT
(jinak by celý ten řetězec neměl smysl). Některé zdroje tvrdí, že se totéž děje i při změně značky v mangle.OUTPUT
, ale když jsem to kdysi zkoušel, nechovalo se to tak. Jestli budu mít čas, zkusím se na to podívat ještě jednou.
Ještě poznámka k tomu, co jste psal dříve: pokud by problém způsobovala směrovací cache, mělo by stačit ji vyprázdnit (ip route flush cache
).
Díky
podle tohoto obrázku by se tak dít mělo
poradíte mi jak to ozkoušet?
Tak jsem to právě vyzkoušel a zdá se, že to tak opravdu funguje. Použil jsem topologii podle obrázku v příloze. Na routeru 83 je v tabulce main
pro síť 10.0.23.0/24
směrování přes gateway 10.0.11.84
. Když přidám
ip route add 10.0.23.0/24 via 10.0.10.85 table 100 ip rule add priority 1000 fwmark 1 lookup 100 iptables -t mangle -A PREROUTING -m length --length 0:500 -j MARK --set-mark 1
a zkusím se podívat, jak chodí pakety z 10.0.21.82
na 10.0.23.88
, tak podle očekávání "dlouhé" chodí dál přes 84, ale "krátké" přes 85. To se ale týká pouze paketů z 10.0.21.0/24
, lokálně generované (tj. ping přímo z 83) podle očekávání dál chodí všechny přes 84. Jakmile jsem ale přidal stejné pravidlo i do chainu OUTPUT
:
iptables -t mangle -A OUTPUT -m length --length 0:500 -j MARK --set-mark 1
začaly se i lokálně generované pakety (z 83) rozdělovat mezi obě trasy podle délky.
Vyvodil jsem z toho poučení, že aby člověk nebyl za blbce, je dobré čas od času vyzkoušet, jestli to, o čem už léta tvrdí že nefunguje, náhodou mezitím fungovat nezačalo.
Moc děkuju, fakt to funguje.
S vaší pomocí jsem to podle délky taky dovedl rozběhat.
Ještě se v tom zkusim povrtat a pak napíšu nějaký zápis do blogu. Zatim nevim co jsem dělal špatně.
U ip rule
jsem nepoužíval prioritu a místo lookup
jsem měl table
...
Ještě jednou díky. Máte u mě pivo, čokoládu nebo tak něco, dle vašeho výběru.
Jste pořád v Sot-ftroniku?
U ip rule jsem nepoužíval prioritu a místo lookup jsem měl table
To by nemělo vadit. Klíčová slova lookup
a table
jsou synonyma a pokud se nespecifikuje priorita, přiřadí se automaticky a stejně bude mezi 0 (kterou má pravidlo, které všechno zkouší vyhledat v local
) a 32766 (kterou má pravidlo, které všechno zkouší vyhledat v main
).
Jste pořád v Sot-ftroniku?
V tom smyslu, že pro ně dělám lektora, ano. Zaměstnanec ale nejsem (ani jsem nikdy nebyl).
Zjistil jsem ze kdyz to mam rozbehane a odstranim z hlavni routovaci defaultni routu tak to zase zacne rvat Network is unreachable
strace
nepomůže.
debian:/home/houska# ip route ls 10.160.3.42 dev ppp0 proto kernel scope link src 10.162.62.199 debian:/home/houska#
Podrobnosti v mailkonferenci netfiltru.
Tiskni
Sdílej: