Veřejnou IP přeložit na vnitřní IP
Napsal: 02 Jun 2010 10:40
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.
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.