❗️Toto je původní verze internetového fóra ISPforum.cz do února 2020 bez možnosti registrace nových uživatelů. Aktivní verzi fóra naleznete na adrese https://telekomunikace.cz

Veřejnou IP přeložit na vnitřní IP

Návody a problémy s konfigurací.
Uživatelský avatar
Trubka88
Příspěvky: 13
Registrován: 17 years ago

Veřejnou IP přeložit na vnitřní IP

Příspěvekod Trubka88 » 15 years ago

Zdravím, nejprve popíšu jak mám postavenou síť, pak s čím bych potřeboval pomoct, nakonec co jsem zkoušel a nejelo mi to.

Jako první zařizení v celé síťi mám hlavní router, ktery běží na linuxu ( OS Fedora), na routru je napsaná následující maskarada (předkladá vnitří rozsah na jednu veřejnou adresu):
#MASKARADA
/sbin/modprobe nf_nat_ftp
/sbin/iptables -t nat -A POSTROUTING -o eth0 -s 10.1.0.0.0/16 -j SNAT --to-source XXX.XXX.XXX.XXX

Kde místo XXX.XXX.XXX.XXX je veřejná adresa, dále za tímto routrem je 24 portovej switch a do tohoto switchu jsou zapojeny jednotlivé vysilací rádia (MK), které vysilají do jednotlivých malích vesnic (kolem 9 malých vesnic), toto místo "hlavní vysilací místo" skráceně HVM. Na ethernetu, který jde na switch je na routru napsaná adresa 10.1.0.0/22 (resp. GW 10.1.0.1).

Nastavení MK v HWM, který vysílá (bod-bod) na jednu vesnici označíme ju A:
IP adresa: 10.1.1.1/22
GW: 10.1.0.1

Nastavení MK ve vesnici A (přijimací anténa bod-bod)
IP adresa: 10.1.2.1/22
GW: 10.1.0.1

Nastavení sektorové antény ve vesnici A:
IP adresa: 10.1.4.1/22
GW: 10.1.0.1

Nastavení klienta1:
IP adresa: 10.1.4.2/22
GW: 10.1.4.1

Vysilací bod-bod je v módu bridge, přijimací bod-bod je v módu station. Sektorová anténa je v módu AP bridge, klient je v módu station. Dále u kliena je nastavena maskarada a na ethernetu je nastavena ip 192.168.1.1/24 a je nastaveno DHCP.

Takhle je vše funkční, ale několik klientů chce veřejnou IP adresu. Poskytovatel, od kterého mám konektivitu mám přidělení rozsah veřejných IP adres XXX.XXX.XXX.224/27. S těmito veřijnými adresami si můžu dělat co chci. Já tyto veřejné IP adresy potřebuji nadělit klientům do různych segmentů.

Zde na fóru sem našel, že se toto dá řešit přes NAT a akci netmap, tak jsem to skusil následoně:
chain=dstnat
dst- address=XXX.XXX.XXX.226
action=netmap
to-addresses=10.1.4.2
----------------------------------------
chain=srcnat
src- address=10.1.4.2
action=netmap
to-addresses=XXX.XXX.XXX.226

Dal jsem ethernet a wifi do bridgu (adresa 10.1.4.2 jsem nastavil na tento bridge) a nastavil jsem mód station pseudobridge (zrušil jsem ve firewall maskaradu) a k MK jsem připojil PC na kterém jsem nastavil IP 10.1.4.3/22.

V routru linux jsem napsal toto pravidlo:
route add -net XXX.XXX.XXX.224 netmask 255.255.255.224 gw 10.120.0.1

Takto nastavé mi internet fungoval, ale samozřejmně na vnitřní síťi, vřejná IP adresa nefungovala. Takže to s čím potřebuji pomoct je, kde dělám chybu (bubu tam mít asi nějakou blbost) nebo popřípadě mi poradit jak to lze udělat lépe. (Já si myslím, že nevím co nastavit v tom routru na linuxu, tedy co s těma veřejnýma na jakou GW to odkazovat)

Doufám že můj popis je srozumitelný, za každou odpoveď děkuji.
0 x
Jsem nováček u MK tak mně nekamenujte :-)

michal.siman
Příspěvky: 1019
Registrován: 17 years ago
Bydliště: Plzeň-jih

Příspěvekod michal.siman » 15 years ago

nu ja nastavuju verejny ip na hlavni brane, tedy na "centralnim natu", presne jak pises, pres netmap. to znamena ze bys to musel udelat na tom tvym linuxu. na vstupni iface si musis nadefinovat ty verejny ip a pak si pres netmap je rozhazujes na vnitrni ip dle libosti.

edit: a jestli mas vicero roznych bran, tedy vicero verejnych ip bloku, pak musis vyuzit neco jako adres list na mikrotiku a podle nejakeho pravidla to markovat (ja to delam podle vnitrni ip) a tyhle vybrany posilat pres branu ktera patri k tomu danemu bloku ip. na mikrotiku je to cele velmi jednoduche ... cele je to o nastaveni na tom hlavnim natu, zbytek je normalne na vnitrnich ip. a jestli mas nejaky spoj v modu bridge na wds na tom zas az tak nezalezi, kdyz je vse ostatni (routy) nastaveno spravne.
0 x
Snazim se nejak zacit, budte na me prosim hodni, dekuji :-) az se neco naucim, ochotne poradim dalsim v rade ...

Uživatelský avatar
Trubka88
Příspěvky: 13
Registrován: 17 years ago

Příspěvekod Trubka88 » 15 years ago

Takže jestli jsem to správně pochopil, tak to co píšu u klienta je správně, jen přidat nějaké pravidlo na ten router na linuxu?
Například tohle?
iptables -t nat -A POSTROUTING -s 10.1.0.0/16 -d XXX.XXX.XXX.224/27 -j MASQUERADE
0 x
Jsem nováček u MK tak mně nekamenujte :-)

michal.siman
Příspěvky: 1019
Registrován: 17 years ago
Bydliště: Plzeň-jih

Příspěvekod michal.siman » 15 years ago

Trubka88 píše:Takže jestli jsem to správně pochopil, tak to co píšu u klienta je správně, jen přidat nějaké pravidlo na ten router na linuxu?
Například tohle?
iptables -t nat -A POSTROUTING -s 10.1.0.0/16 -d XXX.XXX.XXX.224/27 -j MASQUERADE

no u klienta zadnej postrouting nedelas, klient ma normalne tvoji vnitrni adresu, u klienta vubec s verejnou nemanipulujes ...
0 x
Snazim se nejak zacit, budte na me prosim hodni, dekuji :-) az se neco naucim, ochotne poradim dalsim v rade ...

zdenekr
Příspěvky: 218
Registrován: 17 years ago

Příspěvekod zdenekr » 15 years ago

Takle jem měl verejky na linuxu než jem prešel na microtik.

ifconfig eth0:0 x.x.x.x up
iptables -t nat -A PREROUTING -d x.x.x.x -j DNAT --to 10.193.64.33
iptables -t nat -A POSTROUTING -o eth0 -s 10.193.64.33 -j SNAT --to x.x.x.x
iptables -I FORWARD -d 10.193.64.33 -j ACCEPT

Stačí jsi naalisovat ipecka na vstup na rozhraní a potom stačí tendle příkaz v iptables
0 x

Uživatelský avatar
Trubka88
Příspěvky: 13
Registrován: 17 years ago

Příspěvekod Trubka88 » 15 years ago

Do linux routru jsem napsal tohle.
iptables -t nat -A POSTROUTING -s 10.1.0.0/16 -d XXX.XXX.XXX.224/27 -j MASQUERADE

U zakazníka tohle:
chain=dstnat
dst- address=XXX.XXX.XXX.226
action=netmap
to-addresses=10.1.4.2
----------------------------------------
chain=srcnat
src- address=10.1.4.2
action=netmap
to-addresses=XXX.XXX.XXX.226


Ale nefungovalo mi to :cry:
0 x
Jsem nováček u MK tak mně nekamenujte :-)

zdenekr
Příspěvky: 218
Registrován: 17 years ago

Příspěvekod zdenekr » 15 years ago

Trubka88 píše:Do linux routru jsem napsal tohle.
iptables -t nat -A POSTROUTING -s 10.1.0.0/16 -d XXX.XXX.XXX.224/27 -j MASQUERADE

U zakazníka tohle:
chain=dstnat
dst- address=XXX.XXX.XXX.226
action=netmap
to-addresses=10.1.4.2
----------------------------------------
chain=srcnat
src- address=10.1.4.2
action=netmap
to-addresses=XXX.XXX.XXX.226


Ale nefungovalo mi to :cry:



To udelejte tale stačí jen todle pravidlo na linuxu a u zakazníka není nic potreba ifconfig eth0:0 x.x.x.x up
iptables -t nat -A PREROUTING -d x.x.x.x -j DNAT --to 10.1.4.2
iptables -t nat -A POSTROUTING -o eth0 -s 10.1.4.2 -j SNAT --to x.x.x.x
iptables -I FORWARD -d 10.1.4.2 -j ACCEPT

XXX je vaše veřejná ip , takle to fungovat bude

Musí jse nejdříve nailisovat verejný ip na wan tedda na eth0 a potom preposlat až k zákazníkovy Zdenekr
0 x

Uživatelský avatar
Macek
Příspěvky: 130
Registrován: 17 years ago

Příspěvekod Macek » 15 years ago

Můj problém je zas ten že mám hlavní router mikrotik krerá má rozsah DHCP 192.168.11.1-50 na kterém je veřejná IP,
do druhého mikrotiku který je za tím hlavním se dostanu odkudkoliv pomocí přeportování 192.168.11.5:4050 tento druhý mikrotik je jako DHCP client a routuje za něj IP adresy v rozsahu 192.168.12.2-55 , ale do mikrotiku třetího v řadě co má Ip adresu načtenou z druhého mikrotiku 192.168.12.10 se již neumím přeportovat nebo jinak dostat.
Pro někoho snadná záležitost ale mě to trápí už hodně dlouho.
Pokud někdo ví a dokáže poradit, děkuji
0 x