Trükkök a route-tal, IP számokkal (masq, NAT) és hasonlók.:
Hogy csináljak valódi IP-ket a masquerading mögé?
Biztos hogy ezt akarod? Talán egy jobb megoldás erre egy masq_modul, ipautofw vagy ipportfw?

De ha mégis ezt akarod, lássuk.
Amit leírok az az, hogy van egy router (általában olyan amihez nem tudsz hozzápiszkálni), a saját géped ami a masq-t is csinálja (nevezzük SERVER-nek) és néhány gép a server mögött, melyek egy része masquerade-olt. (A Masq-ról a faq más részein olvashatsz.)
Ezen kliensek közül az egyikre szeretnél egy érvényes IP számot abból a tartományból melybe a router feléd esô része, és a servered IP száma is esik. (Más lehetôséged nincs, mert a router nem route-ol feléd más tartományt.)
A feladat nem túl bonyolult olyan szempontból, hogy ha KÜLÖN-KÜLÖN mindkettôt meg tudod oldani (masq menjen valós IP-jű gép nélkül és valós IP menjen masq nélkül), akkor az összesítés csupán annyi, hogy mindkettôt beállítod, vagyis megcsinálod a szükséges route tábla bejegyzéseket a kliens valódi IP-jéhez, és megcsinálod a Masq beállításokat a masqerade-olt IP tartományhoz),
majd a firewallon engedélyezed a kliens IP-jét is (érdemes a Masq szabály elé tenni, a fekete mágia szabályai szerint; valamint hogy ne legyen kavarodás):

 ipfwadm -F -a acc -S kliens_ipje
 ipfwadm -F -a acc -D kliens_ipje
És kész, működik mindkettô együtt.
Ha nem, lásd a faq köv. kérdését a nem szabályos route-olásról.
grin@tolna.net

Mutatok egy példát 2.2.xx+ kernel alatt.

Topologia:

 net -- Router (eth0) -- (eth0) Linux/masq (eth1) -- (eth0) kliens.

Szereplők:

 Router: eth0 = 6.6.6.1
Linux: eth0 = 6.6.6.2, eth1 = 192.168.1.1
Kliens: eth0 = 6.6.6.6
A router beállítás adott.

A Linuxon az alábbi szükséges:

 # masq engedelyezes az adott tartományra
 ipchains -A forward -j MASQ -s 192.168.1.0/24
 # fals IP-ket nem hagyunk grasszálni
 ipchains -A forward -j REJECT -b -s 192.168.0.0/16
Ettől megy a masq. Most a valódi IP-ről gondoskodunk:
 # biztos ami zicher
 echo 1 > /proc/sys/net/ipv4/ip_forward
 # a tuzfal mogotti valodi IP-hez szukseges a proxy arp
 echo 1 > /proc/sys/net/ipv4/conf/all/proxy_arp
 # route tábla a valódi IP-hez
 ip route add 6.6.6.6 dev eth1
 #gyengebbek kedveert: route add 6.6.6.6 dev eth1
 # lyuk a tuzfalon
 ipchains -I forward -d 6.6.6.6
Mivel a legtöbb kliens nem operációs rendszert használ, sokszor nem lehet beállítani a 6.6.6.6-nak rendesen, hogy a 192.168.1.1-et használja gateway-nek. Ezért az "ami nem árt az talán használ" alapon ajándékozzuk meg a belső hálónkat egy valódi IP-jű gateway-jel, eth1:0=6.6.6.2; avagy megadhatjuk gw-nek a routert, melynek elérhetőségéről - ha minden kötél szakad - a proxy-arp gondoskodik.
Ha mindent jól csináltam akkor a kliens akár 192.168.1.1-es, akár 6.6.6.2-es default gateway beállítással működik, és látszik kívülről. (Ha nem, akkor mégsem kellene FAQ-t emlékezetből írnom. :-))
grin@tolna.net


Previous: Mit jelent az, hogy...?
Next: Hogy route-oljak egy gateway-en keresztül úgy hogy a bejövô routerem errôl nem tud? (proxy_arp) This document is: http://localhost/var/www/cgi-bin/fom?file=96

[Search] [Appearance] [Show Edit Commands]
The Faq-O-Matic is by Jon Howell.