Při úklidu na Utažské univerzitě se ve skladovacích prostorách náhodou podařilo nalézt magnetickou pásku s kopií Unixu V4. Páska byla zaslána do počítačového muzea, kde se z pásky úspěšně podařilo extrahovat data a Unix spustit. Je to patrně jediný známý dochovaný exemplář tohoto 52 let starého Unixu, prvního vůbec programovaného v jazyce C.
FFmpeg nechal kvůli porušení autorských práv odstranit z GitHubu jeden z repozitářů patřících čínské technologické firmě Rockchip. Důvodem bylo porušení LGPL ze strany Rockchipu. Rockchip byl FFmpegem na porušování LGPL upozorněn již téměř před dvěma roky.
K dispozici je nový CLI nástroj witr sloužící k analýze běžících procesů. Název je zkratkou slov why-is-this-running, 'proč tohle běží'. Klade si za cíl v 'jediném, lidsky čitelném, výstupu vysvětlit odkud daný spuštěný proces pochází, jak byl spuštěn a jaký řetězec systémů je zodpovědný za to, že tento proces právě teď běží'. Witr je napsán v jazyce Go.
Yazi je správce souborů běžící v terminálu. Napsán je v programovacím jazyce Rust. Podporuje asynchronní I/O operace. Vydán byl v nové verzi 25.12.29. Instalovat jej lze také ze Snapcraftu.
Od soboty do úterý probíhá v Hamburku konference 39C3 (Chaos Communication Congress) věnovaná také počítačové bezpečnosti nebo hardwaru. Program (jiná verze) slibuje řadu zajímavých přednášek. Streamy a záznamy budou k dispozici na media.ccc.de.
Byl představen nový Xserver Phoenix, kompletně od nuly vyvíjený v programovacím jazyce Zig. Projekt Phoenix si klade za cíl být moderní alternativou k X.Org serveru.
XLibre Xserver byl 21. prosince vydán ve verzi 25.1.0, 'winter solstice release'. Od založení tohoto forku X.Org serveru se jedná o vůbec první novou minor verzi (inkrementovalo se to druhé číslo v číselném kódu verze).
Wayback byl vydán ve verzi 0.3. Wayback je "tak akorát Waylandu, aby fungoval Xwayland". Jedná se o kompatibilní vrstvu umožňující běh plnohodnotných X11 desktopových prostředí s využitím komponent z Waylandu. Cílem je nakonec nahradit klasický server X.Org, a tím snížit zátěž údržby aplikací X11.
Byla vydána verze 4.0.0 programovacího jazyka Ruby (Wikipedie). S Ruby Box a ZJIT. Ruby lze vyzkoušet na webové stránce TryRuby. U příležitosti 30. narozenin, první veřejná verze Ruby 0.95 byla oznámena 21. prosince 1995, proběhl redesign webových stránek.
Všem čtenářkám a čtenářům AbcLinuxu krásné Vánoce.
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: