Nové číslo časopisu Raspberry Pi zdarma ke čtení: Raspberry Pi Official Magazine 166 (pdf).
Blíží se prázdniny a než se rozutečete k moři, je na čase se opět sejít na Virtuální Bastlírně - pravidelném setkání elektroniků, ajťáků, bastlířů a obecně nadšenců do techniky. Co si pro vás strahovští bastlíři připravili tentokrát? Určitě proberou blížící se Linux Days i další události. U softwaru se chvíli zdrží a poví si kupříkladu o tom, jak se zbavit Bambu Cloudu, ale nepřijít o možnost ovládat tiskárnu na dálku. Řeč dojde i na AI,
… více »Vývojáři postmarketOS vydali verzi 26.06 tohoto operačního systému pro chytré telefony vycházejícího z optimalizovaného a nakonfigurovaného Alpine Linuxu s vlastními balíčky. Přehled novinek v příspěvku na blogu. Na výběr jsou 4 uživatelská rozhraní: GNOME, KDE Plasma Mobile, Phosh a Sxmo.
Byla vydána nová verze 2.55.0 distribuovaného systému správy verzí Git. Přispělo 100 vývojářů, z toho 33 nových. Přehled novinek v příspěvku na blogu GitHubu a v poznámkách k vydání.
Craig Loewen na blogu Microsoftu oznámil veřejnou preview verzi WSL kontejnerů, tj. linuxových kontejnerů ve Windows Subsystem for Linux (WSL). Spouští se příkazem wslc.exe.
Byla vydána (𝕏, Bluesky) nová verze 2026.2 linuxové distribuce navržené pro digitální forenzní analýzu a penetrační testování Kali Linux (Wikipedie). Přehled novinek se seznamem 9 nových nástrojů v oficiálním oznámení na blogu.
Grafická aplikace Krokiet/Czkawka pro vyhledávání a odstraňovaní nepotřebných souborů (duplicitní soubory, prázdné složky, podobné obrázky, podobná videa, poškozené soubory a další) byla vydána ve verzi 12.0.0. Podrobný přehled novinek v příspěvku na Medium. Jedná se o poslední verzi frontendu Czkawka GTK nad Czkawka Core. Uživatelům se doporučuje migrovat na frontend Krokiet postavený nad frameworkem Slint. Představena byla aplikace Cedinia pro Android využívající Czkawka Core. Dostupná je jako APK pro ruční instalaci.
Po téměř třech letech od vydání verze 9 byla vydána nová verze 10 linuxové distribuce Mageia (Wikipedie). Přehled novinek v poznámkách k vydání.
Nourish (GitHub) je nový správce oken pro Linux. Tradiční plochy nahrazuje nekonečným plátnem a posouváním a přibližováním. Využívá vlastní kompozitor pro Wayland s názvem y5. Videoukázka.
Po 20 letech a 17 otevřených (open source) krátkých filmech Blender Studio oznámilo plán na svůj první celovečerní film. Cílem samozřejmě není jenom nový otevřený film, ale především vývoj a vylepšení otevřených nástrojů pro spolupráci napříč celým procesem a vytvoření otevřené příručky (playbook) pro filmovou produkci ve velkém měřítku s informacemi, které jsou obvykle dostupné pouze uvnitř komerčních studií, a pomoci tak nezávislým tvůrcům překonat technické a organizační bariéry.
ip route add 194.x.x.224 dev eth1 ip route add 194.x.x.225 dev eth2 ip route add 194.x.x.226/31 via 10.158.0.66apod.
Obávám se, že todle bude fungovat jen pokud stanice, které mají používat ony veřejné adresy, mají nainstalován nějaký operační systém. Pokud je na nich nějaký microsoftí produkt, nebude možno (alespoň pokud vím) těmto vysvětlit, kde mají hledat def-gw. Windows tuším routing via zařízení neumějí a neumějí si nechat nastavit IP s maskou /32, takže by to na nich byl docela problém.
(Ale možná kecám, možná to nějak jde, akorát já jsem nikdy nevyvinul dostatečné úsilí.)
Záleží, kterým počítačům budete chtít ty veřejné adresy přidělit. Nejjednodušší případ bude, pokud to budou počítače na stejném segmentu, jako je LAN routeru (tedy segment 10.157.0.0/25). V takovém případě na LAN rozhraní routeru přidejte adresu 194.x.x.x+1/29 a příslušným stanicím nastavte 194.x.x.x+2 až 194.x.x.x+6, maska 255.255.255.248, brána 194.x.x.x+1. Na routeru musíte samozřejmě ošetřit, aby se tento rozsah nemaškarádoval.
Pokud byste chtěl celý ten blok adres dostat do jiného segmentu (třeba 10.158.0.0/25), pak musíte na tom svém WAN/LAN routeru naroutit 194.x.x.x/29 via 10.157.0.x (gateway do segmentu 10.158.0.0) a na této gatewai pak analogicky s předchozím odstavcem nastavit 194.x.x.x+1, atd...
Úplně nejsložitější případ by nastal, pokud byste chtěl některé z těch veřejných adres přidělovat počítačům v různých segmentech. To už by pak nešlo čistě proroutovat a muselo by se to nějak obejít (ať už SNAT/DNATem nebo přes ARPproxy).
Každopádně, to co jsem popsal je čistý routing, nic se neNATuje, prostě se to routuje, tam kam má.
Pokud přesně uvedete, co, jak, kde a komu chcete nastavit (a odkupasebelou ty vaše další subnety, rád svůj popis příslušně zpřesním.
route add -net 10.158.0.0 netmask 255.255.255.128 gw 10.157.0.10 route add -net 10.158.0.128 netmask 255.255.255.128 gw 10.157.0.10 route add -net 10.158.1.0 netmask 255.255.255.128 gw 10.157.0.3 route add -net 10.158.1.128 netmask 255.255.255.128 gw 10.157.0.3 route add -net 10.158.2.0 netmask 255.255.255.128 gw 10.157.0.10 route add -net 10.158.3.0 netmask 255.255.255.128 gw 10.157.0.4 route add -net 10.158.4.0 netmask 255.255.255.128 gw 10.157.0.20 route add -net 10.158.5.0 netmask 255.255.255.128 gw 10.157.0.10 route add -net 10.158.5.128 netmask 255.255.255.128 gw 10.157.0.10 route add -net 10.158.6.0 netmask 255.255.255.128 gw 10.157.0.10 iptables -t nat -A POSTROUTING -o eth1 -s 10.158.0.0/25 -j SNAT --to 172.x.x.a iptables -t nat -A POSTROUTING -o eth1 -s 10.158.0.128/25 -j SNAT --to 172.x.x.a iptables -t nat -A POSTROUTING -o eth1 -s 10.158.1.0/25 -j SNAT --to 172.x.x.a iptables -t nat -A POSTROUTING -o eth1 -s 10.158.1.128/25 -j SNAT --to 172.x.x.a iptables -t nat -A POSTROUTING -o eth1 -s 10.158.2.0/25 -j SNAT --to 172.x.x.a iptables -t nat -A POSTROUTING -o eth1 -s 10.158.3.0/25 -j SNAT --to 172.x.x.a iptables -t nat -A POSTROUTING -o eth1 -s 10.158.4.0/25 -j SNAT --to 172.x.x.a iptables -t nat -A POSTROUTING -o eth1 -s 10.158.5.0/25 -j SNAT --to 172.x.x.a iptables -t nat -A POSTROUTING -o eth1 -s 10.158.5.128/25 -j SNAT --to 172.x.x.a iptables -t nat -A POSTROUTING -o eth1 -s 10.158.6.0/25 -j SNAT --to 172.x.x.aV té to chvíli bych rád nastavil veřejné IP 194.x.x.x+1 stanici 10.157.0.49, IP 194.x.x.x+2 stanici 10.158.1.33 a IP 194.x.x.x+3 stanici 10.158.0.50. Ještě pokud by to bylo možné, nejlepší by bylo, kdyby všem stanicím uvnitř zůstala zachována jejich vnitřní IP, ale není to úplně nutné, kdyby nebylo jednoduché cesty jak to vyřešit. Děkuji za dosavadní rady, rád ještě cokoliv upřesním.
Hm, tak to je malé neštěstí. Asi by to šlo nějak vyřešit pomocí ARP proxy, ale obávám se, že to ztroskotá na nastavení Windows a určitě by to bylo moc práce.
V takovém případě bych doporučil nastavit na tom routeru SNAT/DNAT a prostě příchozí provoz pro IP 194.x.x.x+1 DNATnout na 10.157.0.49, odchozí provoz z 10.157.0.49 SNATnout na 194.x.x.x+1 a tak dál. Bude to nejméně práce a na stanicích nebudete muset nic měnit.
Má to dokonce jednu výhodu, že totiž budete schopen využít všech 8 IP z té /29, při klasickém routování byste jich použil tak maximálně pět. Má to na druhé straně i nevýhodu, protože některé obskurní protokoly (FTP, kupříkladu, to je první obludnost na ráně) nemusí pracovat správně, ale to je vesměs řešitelné stavovým firewallem s vhodným modulem. Želbohu, jiná cesta asi není.
echo "NAT 1:1"
COMMENT="#"
DEV=eth0
while read PublicIP PrivateIP UserName
do
FIRST_CHAR=`echo $PublicIP|cut -c1`
if [ "$FIRST_CHAR" = "$COMMENT" ]
then
echo "$UserName commented"
else
echo "$UserName ($PrivateIP -> $PublicIP)"
iptables -t nat -A PREROUTING -d $PublicIP -j DNAT --to $PrivateIP
iptables -t nat -A POSTROUTING -o $DEV -s $PrivateIP -j SNAT --to $PublicIP
iptables -A FORWARD -i $DEV -d $PrivateIP -j ACCEPT
fi
done < /1-1-nat.conf
# verejna privatni name
212.240.181.2 10.93.0.1 ns
212.240.181.3 10.93.0.3 jiri
212.240.181.4 10.93.0.18 mikael
...
ifconfig eth1:0 194.x.x.x+1 up iptables -t nat -A PREROUTING -d 194.x.x.x+1 -j DNAT --to 10.158.1.33 iptables -t nat -A POSTROUTING -o eth1 -s 10.158.1.33 -j SNAT --to 194.x.x.x+1 iptables -A FORWARD -i eth1 -d 10.158.1.33 -j ACCEPT route add -net 10.158.0.0 netmask 255.255.255.128 gw 10.157.0.10 route add -net 10.158.0.128 netmask 255.255.255.128 gw 10.157.0.10 route add -net 10.158.1.0 netmask 255.255.255.128 gw 10.157.0.3 route add -net 10.158.1.128 netmask 255.255.255.128 gw 10.157.0.3 route add -net 10.158.2.0 netmask 255.255.255.128 gw 10.157.0.10 route add -net 10.158.3.0 netmask 255.255.255.128 gw 10.157.0.4 route add -net 10.158.4.0 netmask 255.255.255.128 gw 10.157.0.20 route add -net 10.158.5.0 netmask 255.255.255.128 gw 10.157.0.10 route add -net 10.158.5.128 netmask 255.255.255.128 gw 10.157.0.10 route add -net 10.158.6.0 netmask 255.255.255.128 gw 10.157.0.10 iptables -t nat -A POSTROUTING -o eth1 -s 10.158.0.0/25 -j SNAT --to 172.x.x.a iptables -t nat -A POSTROUTING -o eth1 -s 10.158.0.128/25 -j SNAT --to 172.x.x.a iptables -t nat -A POSTROUTING -o eth1 -s 10.158.1.0/25 -j SNAT --to 172.x.x.a iptables -t nat -A POSTROUTING -o eth1 -s 10.158.1.128/25 -j SNAT --to 172.x.x.a iptables -t nat -A POSTROUTING -o eth1 -s 10.158.2.0/25 -j SNAT --to 172.x.x.a iptables -t nat -A POSTROUTING -o eth1 -s 10.158.3.0/25 -j SNAT --to 172.x.x.a iptables -t nat -A POSTROUTING -o eth1 -s 10.158.4.0/25 -j SNAT --to 172.x.x.a iptables -t nat -A POSTROUTING -o eth1 -s 10.158.5.0/25 -j SNAT --to 172.x.x.a iptables -t nat -A POSTROUTING -o eth1 -s 10.158.5.128/25 -j SNAT --to 172.x.x.a iptables -t nat -A POSTROUTING -o eth1 -s 10.158.6.0/25 -j SNAT --to 172.x.x.aNa internetu už vystupuji pod veřejnou IP adresou, ale nemůžu se na ni zvenku dostat. Zkoušel jsem vypnout firewall u sebe na počítači a nevím o tom že bych něco blokoval na routeru. Takže jediné co vím, je, že SNAT funguje. Jak se dá co nejjednodušeji zjistit zda funguje DNAT pro moji IP?
Spusťte si na firewallu tcpdump na LANovém i WANovém rozhraní a zkuste ze své stanice obyčejný ping na cojávím www.seznam.cz. No a uvidíte, co jak kterým rozhraním přijde, přeloží se a odejde.
tcpdump na routeru neni, ale snad bude stacit iptraf
ping na www.seznam.cz (212.80.76.18)
ICMP echo req (60 bytes) from 10.158.1.33 to 212.80.76.18 (src HWaddr 0011d8 ICMP echo req (60 bytes) from 194.x.x.x+1 to 212.80.76.18 (src HWaddr 001 ICMP echo rply (60 bytes) from 212.80.76.18 to 194.x.x.x+1 (src HWaddr 00 ICMP echo rply (60 bytes) from 212.80.76.18 to 10.158.1.33 (src HWaddr 00119
Pokud je to tak, že LANovým rozhraním přišel request, SNATnul se, odešel WANovým, následně se WANovým vrátil reply, DNATnul se a odešel LANovým (což vypadá, že to tak je), pak je ale všechno v pořádku.
A ta stanice, z níž jste zkoušel pingat, se tváří, že to pingá? Protože jinak teda nevím, co vám vlastně nefunguje. Eventuálně mi mailněte, zkusíme se domluvit přes ICQ.
iptables -t nat -A PREROUTING -d 194.x.x.x1 -j DNAT --to 10.158.1.33 iptables -t nat -A POSTROUTING -o eth1 -s 10.158.1.33 -j SNAT --to 194.x.x.x+1 iptables -I FORWARD -d 10.158.1.33 -j ACCEPTlze bez problému použít. Děkuji rovněž všem, kteří přispěli.
Chain PREROUTING (policy ACCEPT) target prot opt source destination nat-acl all -- 0.0.0.0/0 0.0.0.0/0 dns-preroute all -- 0.0.0.0/0 0.0.0.0/0 auto-forward all -- 0.0.0.0/0 0.0.0.0/0 port-forward all -- 0.0.0.0/0 0.0.0.0/0 DNAT all -- 0.0.0.0/0 194.x.x.x+1 to:10.158.1.33 Chain POSTROUTING (policy ACCEPT) target prot opt source destination MASQUERADE all -- 10.157.0.0/25 0.0.0.0/0 dns-postroute all -- 0.0.0.0/0 0.0.0.0/0 SNAT all -- 10.158.1.33 0.0.0.0/0 to:194.x.x.x+1 SNAT all -- 10.158.0.0/25 0.0.0.0/0 to:172.20.71.21 SNAT all -- 10.158.0.128/25 0.0.0.0/0 to:172.20.71.21 SNAT all -- 10.158.1.0/25 0.0.0.0/0 to:172.20.71.21 SNAT all -- 10.158.1.128/25 0.0.0.0/0 to:172.20.71.21 SNAT all -- 10.158.2.0/25 0.0.0.0/0 to:172.20.71.21 SNAT all -- 10.158.3.0/25 0.0.0.0/0 to:172.20.71.21 SNAT all -- 10.158.4.0/25 0.0.0.0/0 to:172.20.71.21 SNAT all -- 10.158.5.0/25 0.0.0.0/0 to:172.20.71.21 SNAT all -- 10.158.5.128/25 0.0.0.0/0 to:172.20.71.21 SNAT all -- 10.158.6.0/25 0.0.0.0/0 to:172.20.71.21 Chain OUTPUT (policy ACCEPT) target prot opt source destination Chain auto-forward (1 references) target prot opt source destination Chain dns-postroute (1 references) target prot opt source destination Chain dns-preroute (1 references) target prot opt source destination Chain nat-acl (1 references) target prot opt source destination Chain port-forward (1 references) target prot opt source destination
Tiskni
Sdílej: