Portál AbcLinuxu, 27. dubna 2024 02:54


Dotaz: nechci SNAT ARP dotazu

31.10.2007 10:43 Petr
nechci SNAT ARP dotazu
Přečteno: 257×
Odpovědět | Admin
Zdravim,

resim nasledujici problem:

Strucny popis - na serveru se mi provadi SNAT i pro ARP dotazy, coz nechci..


Obsahlejsi popis-

Muj server ma jednu zakladni verejnou IP adresu a dalsi IP adresa je na nej routovana.

     Internet
        |
      SWITCH
  100.100.100.1/28
        |
    --------------------------
   |                          |
   |                          |
100.100.100.10/28        100.100.100.15/28
15.15.15.15/32              CIZI SERVER
 MUJ SERVER

Pro komunikaci s vnejskem chci pouzivat routovanou adresu. Tj. provadim SNAT

#iptables -L -n -t nat
 ..
 Chain POSTROUTING (policy ACCEPT)
 target     prot opt source               destination
 SNAT       all  --  0.0.0.0/0            0.0.0.0/0           to:15.15.15.15
Do Internetu vse krasne funguje..

Problem - potrebuju komunikovat se serverem, ktery je ve stejne siti jako muj server (100.100.100.15). Kdyz se na nej ale pokusim dostat - # ping 100.100.100.15 - odchazi arp dotaz z SNATovanyho IP:

 09:00:49.289553 arp who-has 100.100.100.15 tell 15.15.15.15
 09:00:50.289580 arp who-has 100.100.100.15 tell 15.15.15.15
Tj. server 100.100.100.15 na nej neodpovi.

Jde nejak "zakazat" provadeni SNATu pro ARP dotazy? Pokud tomu dobre rozumim, iptables pracuji jen nad IP vrstvou, proc se v nich tedy vlastne vubec provadi SNAT pro ARP..?

Kupodivu, pokud zkusim zavolat #nmap 100.100.100.15 -p 443 (potrebuji na port 443), odejde arp dotaz tak jak bych ocekaval:

 09:05:50.289580 arp who-has 100.100.100.15 tell 100.100.100.10
zjisti se MAC adresa a vse zacne krasne fungovat..

Diky za rady, Petr
Nástroje: Začni sledovat (0) ?Zašle upozornění na váš email při vložení nového komentáře.

Odpovědi

31.10.2007 11:29 Rockfire | skóre: 14 | blog: blg
Rozbalit Rozbalit vše Re: nechci SNAT ARP dotazu
Odpovědět | | Sbalit | Link | Blokovat | Admin
A kdyz provedes SNAT pouze pro cil kde neni 100.100.100.10/28 tj

iptables -t nat -A POSTROUTING -d ! 100.100.100.10/28 -o output_rozhrani -j SNAT --to 15.15.15.15

(ten vykricnik to neguje)

nepomuze to?
31.10.2007 12:17 Petr
Rozbalit Rozbalit vše Re: nechci SNAT ARP dotazu
Dik za radu.

Pomuze to v tom, ze ARP dotaz odchazi z 100.100.100.10, tj. dostanu MAC adresu, to je ok. Jenze problem je, ze potom s pocitaci v siti 100.100.100.10/28 komunikuju pomoci IP adresy 100.100.100.10 (pomerne logicky, nedela se SNAT..), coz nechci.. Potrebuju se vuci nim tvarit jako 15.15.15.15 (kvuli firewalum, atd..).

Petr
31.10.2007 12:44 Rockfire | skóre: 14 | blog: blg
Rozbalit Rozbalit vše Re: nechci SNAT ARP dotazu
Nejsem si jisty jestli to uplne chapu, ale pokud ano. Tak nejspist bude problem v tom, ze vy poslete paket z ip 15.15.15.15 coz chcete, ale poslete ho primo a pocitac z 100.100.100.10/28 ho sice prijme ale odpovida vychozi brane protoze nema nastaveny rozsah 15.15.15.xx/28. Pokud s nimi chcete komunikovat pres ip 15.15.15.15 naprimo, tak on musi mit ip taky z toho rozsahu a nebo budete komunikovat s routerem ktery tuto komunikaci zajisti. Muzete jeste poslat vypis routovaci tabulky?
31.10.2007 13:10 Petr
Rozbalit Rozbalit vše Re: nechci SNAT ARP dotazu
Diky za rady, routovaci tabulka byla spravne klicove slovo :-), pro IP 100.100.100.15 vyreseno vlozenim
  route add -host 100.100.100.15 gw 100.100.100.1
Tj. ted komunikace se strojem 100.100.100.15 bezi vzdy pres gateway, i kdyz je v stejne siti..

Petr
31.10.2007 13:13 Filip Jirsák | skóre: 68 | blog: Fa & Bi
Rozbalit Rozbalit vše Re: nechci SNAT ARP dotazu
Odpovědět | | Sbalit | Link | Blokovat | Admin
Problém není v tom, že by se SNAT dělal na ARP dotazy. Problém je v tom, že váš server má nastavené chybně routování, takže neví, že na cizí server má jít přímo, ne přes default gateway. Pokusí se jít přímo a tudíž přes SNAT, SNAT se pokouší navázat spojení s danou IP adresou a tudíž sám za sebe pošle ARP paket.

Buď musíte dát váš i cizí server do společné IP sítě (tedy místo /28 dát něco menšího) – to ale asi nechcete. Pokud jsou oba servery ve stejné fyzické síti, můžete jim nastavit routy přímo, nebo můžete každému přidělit na síťové kartě alias – IP adresu z druhé sítě (a pak komunikovat přes ni). Pokud je mezi servery nějaký router, je nutné nastavit správně routování na něm, a vyloučit ze SNATu komunikaci mezi těmi dvěma sítěmi.

Založit nové vláknoNahoru

Tiskni Sdílej: Linkuj Jaggni to Vybrali.sme.sk Google Del.icio.us Facebook

ISSN 1214-1267, (c) 1999-2007 Stickfish s.r.o.