GNU Project Debugger aneb GDB byl vydán ve verzi 16.1. Podrobný přehled novinek v souboru NEWS.
Po 9 týdnech vývoje od vydání Linuxu 6.12 oznámil Linus Torvalds vydání Linuxu 6.13. Přehled novinek a vylepšení na LWN.net: první a druhá polovina začleňovacího okna a Linux Kernel Newbies. Odstraněn byl souborový systém ReiserFS.
19. ledna 2038 přeteče hodnota time_t na 32bitových systémech, na vyřešení problému roku 2038 (Y2K38) tedy zbývá 13 let. Např. Debian v uplynulém roce přešel na 64bitový čas. Bernhard Wiedemann z openSUSE sdílí chyby v sestavení rozšířeného softwaru.
Byla vydána druhá opravná verze 21.2 v dubnu loňského roku vydané verze 21 multimediálního centra Kodi (dříve XBMC, Wikipedie) s kódovým označením Omega.
TikTok ve Spojených státech v sobotu večer místního času přerušil činnost. Uživatelé čínskou firmou vlastněné sociální sítě dostali zprávu, že aplikaci kvůli zákazu nelze používat. TikTok je momentálně nedostupný v obchodech s aplikacemi Google Play a App Store. Podle zákona přijatého loni a potvrzeného v pátek soudem měla platforma do dneška přerušit spojení se svou mateřskou společností ByteDance, která sídlí v Číně, nebo činnost v
… více »Wings 3D, tj. open source 3D modelovací program naprogramovaný v programovacím jazyce Erlang zaměřený na modelování pomocí subdivision a inspirovaný programy Nendo a Mirai od Izware, byl vydán v nové opravné verzi 2.4.1. Ke stažení již také ve formátu Flatpak z Flathubu.
Webový prohlížeč Dillo byl vydán ve verzi 3.2.0. Přidává podporu vzorců v SVG, obrázků ve WebP, změny velikosti stránky či možností posouvání. Nedávno oslavil 25. výročí vzniku.
Hra Mini Thief je na Steamu zdarma napořád, když aktivaci provedete do 24. ledna do 19.00 [ProtonDB].
Certifikační autorita Let's Encrypt oznámila, že bude volitelně nabízet krátkodobé certifikáty s šestidenní platností a navíc s možností vystavit je na IP adresu. Zvolit typ certifikátu bude možné v certifikačním profilu ACME.
Herní konzole Nintendo Switch 2 byla oficiálně potvrzena. Vyjde letos. Trailer na YouTube. Více ve středu 2. dubna na Nintendo Direct.
Pro počítač 192.168.0.70 chci aby měl IP 81.201.56.70
Pro počítač 192.168.0.75 chci aby měl IP 81.201.56.75
Všechny ostatní počítače chci aby vystupovali pod současnou IP adresou routeru (tzn. beze změny).
Zkoušel jsem něco takového:
iptables -t nat -A POSTROUTING -o eth1:1 -j SNAT --to 192.168.0.70
kde eth1:1 jsem přiřadil onu veřejnou IP adresu 81.201.56.70
Bohužel i nadále počítač vystupuje pod adresou routeru a ne onou 81.201.56.70, kterou se mu pokouším přiřadit (za NATem, ne přímo).
Díky za návrhy.
Řešení dotazu:
iptables -t nat -A PREROUTING -i rozhrani_k_ISP -d verejne_ip -j DNAT --to-destination vnitrni_adresa iptables -t nat -A POSTROUTING -i rozhrani_do_vnitrni_site -s vnitrni_ip -j SNAT --to-source verejne_ipPřeji prima den
iptables -t nat -A PREROUTING -i eth1 -d 81.201.56.12 -j DNAT --to 192.168.0.12
iptables -t nat -A POSTROUTING -o br-lan -s 192.168.0.12 -j SNAT --to-source 81.201.56.12
A výsledek je takový, mám na onom stroji stále IP routeru (tzn. bezezměny) ... na IP koukám přes mojeip.cz, whatismyip.com a podobně.
Dělám ještě něco špatně ?
src
při přidávání routy (viz).
eth:1
neexistuje. Síťová karta je eth1
, eth1:1
je něco, čím vás mate ifconfig
, který je 12 let na Linuxu zastaralý a nemá se používat. Používejte příkaz ip
z balíčku iproute2
, který vám bude zobrazovat skutečné nastavení síťování v jádře.
Za druhé, pokud se to má týkat jen odchozí komunikace a chete mermomocí použít NAT, mělo by stačit nastavit tohle:
iptables -t nat -A POSTROUTING -s 192.168.0.70 -j SNAt --to 81.201.56.70Lepší mi ale připadá nastavit ty veřejné IP adresy rovnou těm koncovým počítačům (jako další IP adresu) a řešit to normálním routováním.
Za prvé, nci jako eth:1
neexistuje.
Ano, také jsem nepsal eth:1, ale eth1:1 (jako druhá IP rozhraní), ale to víte.
... čím vás mate ifconfig, který je 12 let na Linuxu zastaralý a nemá se používatMě se nezdá, že by mě ifconfig mátl. Přijde mi mnohem jednodušší napsat:
ifconfig eth1:1 192.168.0.2/24
než-li
ip addr add 192.168.0.2/24 dev eth1
Ale pokud je to tak jak řikáte, tak se "napravím".
S linuxem si rozumím bez problému již dlouho, ale ohledně iptables jsem úplně mimo mísu, protože jsem neměl nikdy potřebu to řešit, to až teď co jsem si dal na Router OpenWRT
Co se týče Vašeho příkladu, tak s tím jsem bohužel nepochodil stále se stroj NATuje přes router (tj. má jeho ip).
Díky
# Vše co má jít do internetu, tak ať má source IP veřejnou adresu routeru iptables -t nat -A POSTROUTING -o "VENKOVNI_ROZHRANNI_K_ISP" -s "INT.IP.PC" -j SNAT --to "VEŘEJNÁ IP ROUTERU"
# Vše co má jít na lokální PC z veřejné IP adresy, pošli na IP adresu lokálního PC iptables -t nat -A PREROUTING -i "VENKOVNI_ROZHRANNI_K_ISP" -d "DANÁ VEŘEJNÁ IP" -j DNAT --to "INT.IP.PC"
root@pmalecek-owrt:~# iptables -t nat -A POSTROUTING -o eth1 -s 192.168.0.12 -j SNAT --to 81.201.56.12
root@pmalecek-owrt:~# iptables -t nat -A PREROUTING -i eth1 -d 81.201.56.12 -j DNAT --to 192.168.0.12
Změnil jsem jen ten první příklad, kde chci, aby cokoli co má jít do internetu z toho počítače s IP 192.168.0.12 tak chci, aby mělo 2. veřejnou IP routeru (určenou jen pro ten PC s IP 192.168.0.12).
Bohužel stále jsem ve stavu, kdy když se podívám na mojeip.cz, tak má počítač 1. (hlavní) IP routeru, namísto druhé IP, kterou pro něj chci používat
Ještě jednou tedy pro 100% ujasnění co chci - když se podívám na jakémkoli počítači na stránku mojeip.cz, tak aby se jako vystupující IP zobrazila veřejka routeru (což tak nyní funguje), ale když se podívám z počítače, který má IP 192.168.0.12, tak aby na stránce mojeip.cz vystupoval pod veřejnou IP 81.201.56.12 (mám ji pro ten stroj vyhrazenou).
Díky
config rule
option src wan
option proto tcp
option dest_port 23
option target ACCEPT
option family ipv4
... a jak tu již někdo zmiňoval, nejdřív se nadefinovala vší komunikace na hlavní IP routeru a já jsem pak přidával pravidlo, které se mělo zavést ještě před tím.
Naštěstí tento firewall počítá i s uživatelskými pravidly, takže stačilo vložit ty řádky, které jste mi radil a já si je upravil do /etc/firewall.user a již je vše jak jsem chtěl.
Všem moc děkuji za snahu poradit, opět jsem tu trotl já, který se přehlédl.
nevidím jediný důvod, proč si komplikovat život psaním složitých příkazů přes ip, když ifconfig funguje bezproblémověZrovna v původním dotazu máte příklad toho, že
ifconfig
nefunguje bezproblémově. Internetové poradny jsou plné těch, kteří si myslí, že ifconfig
jim funguje bezproblémově, akorát mají nějaký problém s nastavením sítě. Také si pochvalují, jak je jednoduchý, a nevadí jim, že dělá něco jiného, než si oni myslí.
Ano, také jsem nepsal eth:1, ale eth1:1 (jako druhá IP rozhraní), ale to víte.To byl asi nedoklep v komentáři předřečníka.
Mě se nezdá, že by mě ifconfig mátl.Ale mate. Například tím, že ti ukazuje neexistující rozhraní eth1:1. Mě zase mate tím, že mi neukazuje všechny adresy, které mám momentálně na síťovce nastavené (zkus si přidat dvě IPv4 adresy na jednu síťovku a pak se podívej do ifconfigu - ukáže ti jenom jednu!).
eth1:1 (jako druhá IP rozhraní), ale to víte.No právě že alespoň já nevím. Od jádra 2.2 může mít jedno rozhraní víc adres a zároveň se na to nepoužívají takovéto podivné aliasy. (brát s rezervou, tou dobou jsem chodil do školky, zkušenosti mám jen zprostředkované od pamětníků) Nějaké odkazy (+ diskuze).
Ano, také jsem nepsal eth:1, ale eth1:1 (jako druhá IP rozhraní), ale to víte.
eth:1
je překlep, omlouvám se, mělo tam být eth1:1
.
Mě se nezdá, že by mě ifconfig mátl.Pokud by vás nemátl, nepokoušel byste se v
iptables
používat neexistující rozhraní eth1:1
.
Co se týče Vašeho příkladu, tak s tím jsem bohužel nepochodil stále se stroj NATuje přes router (tj. má jeho ip).Jak to zjišťujete? Zkoušíte např.
ping
na jiný počítač, a tam zjišťujete odchozí adresu? Někde jsem zahlédl, že jste to testoval pomocí webu – nemáte tam web proxy server? Jak vypadají všechna pravidla pro NAT – nejsem si jist, jak to funguje, když jeden paket vyhoví více pravidlům pro NAT, které pravidlo se pak uplatní.
Jak to zjišťujete?Přes webové adresy mojeip.cz, whatismyip.com atp. Proxy nemám, už na něj na routeru není místo
Chain PREROUTING (policy ACCEPT)
target prot opt source destination
prerouting_rule all -- anywhere anywhere
zone_lan_prerouting all -- anywhere anywhere
zone_wan_prerouting all -- anywhere anywhere
DNAT all -- anywhere 81.201.56.12 to:192.168.0.12
Chain POSTROUTING (policy ACCEPT)
target prot opt source destination
postrouting_rule all -- anywhere anywhere
zone_lan_nat all -- anywhere anywhere
zone_wan_nat all -- anywhere anywhere
SNAT all -- petr-ntb.192.in-addr.arpa anywhere to:81.201.56.12
Chain OUTPUT (policy ACCEPT)
target prot opt source destination
Chain MINIUPNPD (1 references)
target prot opt source destination
DNAT tcp -- anywhere anywhere tcp dpt:38945 to:192.168.0.10:38945
DNAT udp -- anywhere anywhere udp dpt:38945 to:192.168.0.10:38945
DNAT udp -- anywhere anywhere udp dpt:20851 to:192.168.0.95:20851
DNAT tcp -- anywhere anywhere tcp dpt:20851 to:192.168.0.95:20851
DNAT tcp -- anywhere anywhere tcp dpt:49291 to:192.168.0.10:49291
Chain nat_reflection_in (1 references)
target prot opt source destination
Chain nat_reflection_out (1 references)
target prot opt source destination
Chain postrouting_rule (1 references)
target prot opt source destination
nat_reflection_out all -- anywhere anywhere
Chain prerouting_lan (1 references)
target prot opt source destination
Chain prerouting_rule (1 references)
target prot opt source destination
nat_reflection_in all -- anywhere anywhere
Chain prerouting_wan (1 references)
target prot opt source destination
Chain zone_lan_nat (1 references)
target prot opt source destination
Chain zone_lan_prerouting (1 references)
target prot opt source destination
prerouting_lan all -- anywhere anywhere
Chain zone_wan_nat (1 references)
target prot opt source destination
MASQUERADE all -- anywhere anywhere
Chain zone_wan_prerouting (1 references)
target prot opt source destination
MINIUPNPD all -- anywhere anywhere
prerouting_wan all -- anywhere anywhere
iptables
fungují priority, vždy jsem to nastavoval tak, aby paket vyhověl jen jednomu pravidlu. Doporučil bych to stejně udělat i vám – tj. do prerouting_rule
, zone_lan_prerouting
atd. posílat jenom ty pakety, pro které nechcete mít specifický NAT.
Ně se nezdá, že by mě ifconfig mátl. Přijde mi mnohem jednodušší napsat: ifconfig eth1:1 192.168.0.2/24 než-li ip addr add 192.168.0.2/24 dev eth1Tak v tom vidím trošku ten problém. Když ti přijde jednodušší přidat (add) IP než vytvářet nějaké pseudorozhraní.
1. Když už vás tak trápí každý znak, tak si to porovnejme:
ifconfig eth1:1 192.168.0.2/24 # 30 znaků ip a a 192.168.0.2/24 dev eth1 # 30 znaků
Navíc syntaxe, kterou uvádíte u příkazu ifconfig
, ani není podporována v manuálové stránce. Podle ní to má být
ifconfig eth1:1 192.168.0.2 netmask 255.255.255.0 # pro IPv4 ifconfig eth1 add fec0::2/64 # pro IPv6
2. Vypíše je někdy. Ale problém je hlavně v tom, že je vůbec vypíše (tedy někdy), protože neexistují. Uživatelé pak snadno uvěří v jejich existenci a snaží se s nimi pracovat jako se síťovými rozhraními, což v lepším případě nejde (viz váš problém s netfilterem), v horším to udělá něco jiného (zkuste tomu "rozhraní eth1:1
" třeba nastavit příznaky nebo parametry, nastaví se eth1
).
Jsem osoba líná a proč bych psal příkaz delší, když mohu napsat ten kratší se stejným výsledkem ?Já jsem osoba líná, takže radši říkám počítači to, co po něm chci, ne něco, co po něm sice vůbec nechci, abych docílil toho, co chci. A to i kdyby mě to stálo pár stisků kláves navíc (všema deseti to nezabere ani znatelný čas). Jinak viz co psal Michal Kubeček.
Apropo co jsem koukal - ifconfig vypíše i tato "subrozhraní", takže vidím ve výpisu br-lan, wlan0, eth0, eth1, eth1:1, eth1:2, tap0, ...Což vidím také jako velkou nevýhodu. Nejen, že si s ifconfigem musím říkat o nesmyslná rozhraní, ale on mi je dokonce i vypisuje.
Tiskni Sdílej: