[ Originala na tazi stranica ]
 
 

Oblasti

 Novini
 Aktualna tema
 Linux portali
 Kakvo e Linuks?
 Vuprosi-otgovori
 Forumi
   •Trudova borsa
   •Konkurs
 Statii
   • Istoriia
   • Suveti
   • Idei/Mneniia
   • Razrabotki
   • Programi
   • Igri
 Distributsii
   •Poruchka na CD
 Made In BG
 Failove
 Vruzki
 Galeriia
 Konferentsii

Nastroiki

 Vunshen vid
 Predlozheniia
 Napravi si sam

I oshte ...

 Za nas
 Linuks za bulgari EOOD
 Link kum nas
 Predlozheniia


Hosted by:


SUVETI
 
Zaobikaliane na TTL filtri pri NAT
  Suveti>Mrezha
Suveti>Trikove

Avtor:Beco
Data:13-02-2006

 102  Zle Dobre

Printer Friendly Variant za otpechatvane

Litsenz: CC Attribution-ShareAlike

Opisanie na litsenza: http://creativecommons.org/licenses/by-sa/2.5/


Povod:

Predi dva dni moi poznat stana klient na uslugata na Houmlan tip "ikonomichna". Razbira se, po star naroden obichai, uslugata be raznoobrazena s TTL filtur ot strana na dostavchika (vuprosniia Houmlan), ta da ne mozhe klientut da se izkushi da izpolzva v kushti marshrutizator i da ne mozhe da svurzhe prez nego kum uslugata poveche ot edin kompyutur. Dobre, no da si predstavim, che klientut ima IP telefon i tova na praktika e vtori potrebitel na Internet, zaedno s domashniia kompyutur. Razbira se, che za da ima IP telefon i svurzan kum internet kompyutur, shte se nalozhi da se napravi mrezhova adresna translatsiia - NAT (izvestna sred ekzaltiranite ot chatene s "pichki" v IRC mega oligofreni, kato "maskirane zad realen IP adres"). Razbira se, Houmlan triabva da sa po-naivni i ot napushen tineidzhur, za da poviarvat v ideite si i da si misliat, che niakoi shte si plati otdelen dostup po tarifi za internet svurzvane, za da ima v kushti IP telefon. Vekut na golemite utopii si zamina predi 6 godini.

Drug povod:

Ot sedmitsa veche Data.BG predlagat plateno pomestvane na sudurzhanie na survurite im za svoboden hosting (svoboden, no platen). Tuseshtata mashina sushto e platena. Ot druga strana Data.BG PRODAVAT trafika ot i kum tova sudurzhanie na drugi dostavchitsi na svurzanost. Znachi izliza taka - vednuzh klienta plashta za da kachi sudurzhanieto i vori put si plashta za da go iztegli. Perfektna debelashka sistema za pechelene na pari ot prodazhba na nelitsenzirano sudurzhanie. Houmlan sa internet kompaniia na Data.BG.

Da ne si pomislite obache, che opisanieto tuk e napraveno samo s tsel vklyuchvane na IP telefon. Po tozi nachin (koito shte opisha po-dolu), mozhete da vklyuchite tsialata si domashna mrezha kum Internet, ili kazano po-kratko vsichko, koeto ima mrezhova platka na sebe si.

Niakoi predvaritelni utochneniia:

* Izpolzvanata distributsiia za tselta e Fedora Core 4 (tova ne znachi, che ne stava i s drugi distributsii).

* Fedora Core 4 triabva da bude aktualizirana (deistvie, koeto se opisva s krasiviia i tolkova avtentichen bulgarski glagol "updeitvam"). Ako tova uslovie ne bude izpulneno, ima opasnost opisanata po-dolu tehnologiia da ne bude uspeshno ralizirana.

1. Nastroiki na marshrutizatora

Nastroikite po-dolu kasaiat tozi kompyutur, koito shte bude svurzan chrez PPPoE ili PPTP protokol kum mrezhata na dostavchika. Povecheto LAN dostavchitsi izpolzvat za vsichki domashni klienti "link" protokol PPPoE (za biznes klienti tova ne e taka), a niakoi PPTP, kudeto ne e nuzhno "link" svurzvane kum shlyuza za Internet. Sledovatelno mozhe da vi se nalozhi da napravite nastroiki s tsel rabota s tozi protokol, koito da zasegnat konfiguratsiiata na mrezhovite interfeisi. Poveche za tova mozhete da prochetete na sledniia adres:

http://hardtrance.blogspot.com/2005/11/pppoe-fedora-red-hat-enterprise-linux.html

Ubedete se, che svurzvaneto po protokol PPPoE e uspeshno i imate vruzka kum Internet.

Sled tova e nuzhno da konfigurirate iadroto sus suotvetnite optsii taka, che da mozhe to da marshrutizira paketite ot vutreshnata mrezha kum Internet i obratno. Ne se plashete, ne e nuzhno da pravite nishto osven da redaktirate edin fail. Tozi fail e /etc/sysctl.conf. V nego namerete sledniia red (postavete go, ako go niama):

net.ipv4.ip_forward = 0

i go promenete taka (ako tova se nalaga, razbira se):

net.ipv4.ip_forward = 1

Za da vleze v sila tazi promiana (za da mozhe iadroto da prieme tazi nastroika i da zapochne da marshrutizira paketite), e nuzhno da izpulnite sledniia komanden red:

# sysctl -p

Tova e pravilniiat nachin za podavane na stoinosti na parametri na iadroto. Vsiakakvi drugi pornografii v stil "echo 1 > /proc/sys/net/ipv4/ip_forward" nabiti po sistemni skriptove, govoriat za iaka IRC shkolovka i mega zatupiavane, vodeshto do napravata na TNTM resheniia ot tip "raboti samo pri men".

2. Izbiagvane na filtratsiiata na paketi izlizashti ili idvashti kum visok nomer na port na marshrutizatora v usloviiata na NAT

Druga "mega" hvatka, koiato se polzva ot razni veliki dostavchitsi s tsel ogranichavane na prilaganeto na NAT ot strana na klientite, e avtomatichnoto otriazvane na paketite ot i kum visoki nomera na portove na klientskata mashina (tezi portove se izpolzvat imenno, kogato ima izvurshvane na NAT). Razbira se, takuv filtur mozhe da raboti samo, ako nasreshta si imat "lovtsi na pichki" v IRC i shofüori na avtomobili s emblematichnata marka VW Golf. Az izobshto ne sum proveriaval dali moiat dostavchik ima realizatsii na podobni filtri. Napravo zaobikolih takova ogranichenie (ako go ima). Za tselta otnovo se redaktira (v sluchaia e po-dobre da se kazhe dopulva) konfiguratsionniia fail za parametrite na iadroto /etc/sysctl.conf. V nego triabva da prisustva sledniia red:

net.ipv4.ip_local_port_range = 1024 32768

Sled kato toi bude zapisan vuv faila, zadadenite stoinosti triabva da se podadat za prochit kum iadroto. Tova stava s komandniia red:

# sysctl -p

3. Proverka za nalichnost na modula ipt_TTL.ko

Ako izpulnite komandata:

# modprobe ipt_TTL

i ne poluchite suobshtenie za greshka, a kursora v konzolata sleze na nov red, znachi modulut e nalichen v modulnata kolektsiia na iadroto. Nalichieto na modula ipt_TTL.ko absolyutno zadulzhitelno uslovie za da mozhe da bude nadhitren TTL filtura. Ne e nuzhno pri vseki start na sistemata ruchno da zarezhdate tozi modul. Instrumentut iptables pri prochit na s pravila, koito shte budat zadadeni, shte napravi tova avtomatichno slred purvoto sreshtane na "-j TTL".

4. Pravila za netfilter s tsel zaobikaliane na TTL filtura

Vuv Fedora Core i Red Hat Enterprise Linux i derivatite mu, vsichki pravila za netfilter, koito sled tova se chetat i prilagat ot instrumenta iptables, sledva da se namirat vuv faila /etc/sysconfig/iptables. Po printsip tozi fail ne sushtestvuva vurhu priasno instaliranata sistema. I e nuzhno da bude suzdaden. Nai-lesniiat nachin e da se vuvede niakakvo pravilo i da se izpulni

# iptables-save > /etc/sysconfig/iptables

Poveche za osobenostite za upravlenie na netfilter pod edora Core i Red Hat Enterprise Linux i derivatite mu, mozhete da nametrite tuk:

http://hardtrance.blogspot.com/2006/02/netfilter-fedora-core-red-hat.html

Po-dolu, v primernite nastroiki, se predpolaga, che interfeisut za svurzvane kum internet dostavchika vi e ppp0. Ako tova ne e taka, promenete imeto na interfeisa s izpolzvaniia ot vas. Predpolaga se i che adresnoto prostranstvo na domashnata chastna mrezha e 192.168.10.0/24. Promenete go s aktualnoto pri vas.

Eto i pravilata za netfilter, koito triabva da sa nalichni kum tablitsata mangle, za da mozhe da zaobikolite TTL filtura

Variant 1 - chrez vuvezhdane v konmanden red:

# iptables -t mangle -A PREROUTING -i ppp0 -j TTL --ttl-inc 1
# iptables -t mangle -A POSTROUTING -s 192.168.10.0/24 -o ppp0 -j TTL --ttl-inc 1

Variant 2 - chrez opisanie v konfiguratsionniia fail /etc/sysconfig/iptables:

*mangle
:PREROUTING ACCEPT [0:0]
:INPUT ACCEPT [0:0]
:FORWARD ACCEPT [0:0]
:OUTPUT ACCEPT [0:0]
:POSTROUTING ACCEPT [0:0]
-A PREROUTING -i ppp0 -j TTL --ttl-inc 1
-A POSTROUTING -s 192.168.10.0/24 -o ppp0 -j TTL --ttl-inc 1
COMMIT

Ako se izpolzva variant 2, sled zapisa na praviloto vuv faila /etc/sysconfig/iptables e neobhodimo da se restartira uslugata iptables. Tova mozhe da stane chrez komandniia red:

# service iptables restart

Pak napomniame, che ako ne izpolzvate PPPoE ili PPTP protokol za svurzvane, a samo chista eternet vruzka, zamestete ppp0 v gornite izrazi s imenata na eternet interfeisa (primerno eth0 ili eth1), koito vi svurzva s dostavchika vi.

5. Izgrazhdane na pravilo za mrezhova adresna translatsiia - NAT v netfilter

VNIMANIE!!! Praviloto ne se vliiae ot tova dali dostavchikut predostavia na klienta statichen ili dinamichen IP adres, kakto bez znachenie e dali adresut e publichen ili chasten.

Sled kato sa izpulneni po-gornite stupki, idva i red na poslednata stupka, a imenno zadavane na pravilo za mrezhova adresna translatsiia v netfilter. Konkretniiat vid na tova pravilo zavisi ot vida na svurzvaneto. Ako dostavchikut predostavia svurzanostta kum Internet chrez PPPoE ili PPTP, to interfeisut kum Internet e ppp0 ili ppp1 (vsushtnost ako niama drugi ppp vruzki, se izpolzva ppp0, ako i toi e zaet ppp1 i t.n, no tova e veche konkretna situatsiia pri klienta, koiato tuk niama da se obsuzhda). Za primerite shte priemame, che ako klientut izpolzva protokol PPPoE ili PPTP, to interfeisa kum Internet e ppp0, ako klientut e svurzan direktno prez eternet vruzka, bez dopulnitelna kapsulatsiia, to interfeisut kum Internet e eth0.

I taka, eto praviloto za netfilter, konkretizirano po sluchai:

a) pri izpolzvane na PPP kapsulatsiia (klientut e svurzan kum Internet chrez protokoli PPPoE ili PPTP):

- zadavane na praviloto v komanden red:

# iptables -t nat -I POSTROUTING -o ppp0 -j MASQUERADE

- zadavane na praviloto v /etc/sysconfig/iptables

*nat
:PREROUTING ACCEPT [0:0]
:POSTROUTING ACCEPT [0:0]
:OUTPUT ACCEPT [0:0]
-A POSTROUTING -o ppp0 -j MASQUERADE
COMMIT

b) pri izpolzvane na direktna svurzanost prez interfeis eth0

- zadavane na praviloto v komanden red:

# iptables -t nat -I POSTROUTING -o eth0 -j MASQUERADE

- zadavane na praviloto v /etc/sysconfig/iptables

*nat
:PREROUTING ACCEPT [0:0]
:POSTROUTING ACCEPT [0:0]
:OUTPUT ACCEPT [0:0]
-A POSTROUTING -o eth0 -j MASQUERADE
COMMIT

Dobre e sled zadavane na praviloto v /etc/sysconfig/iptables da se restartira uslugata iptables:

# service iptables restart

6. Oshte tunkosti i hitrosti.

Ako po opisaniia po-gore nachin podlagate na NAT mashini s operatsionni sistemi razlichni ot Linux, e dobre da napravite taka, che vsichki izhodiashti ot tiah paketi da imat edin i sushti parametur TTL. Eto i kratko obiasnenie zashto mozhe da se nalozhi da se napravi tova. Linux iadrata po podrazbirane postaviat stoinost na parametura TTL ravna na 64 na izhodiashtite ot TCP/IP steka paketi. Pri drugi operatsionni sistemi tova ne e taka. Naprimer pri MS Windows stoinostta na parametura TTL za izhodiashtite ot TCP/IP steka paketi e 128. Neka sega da vidim, ako prilozhim shemata, koiato e opisana po-gore, kakuv shte e efekta pri izpolzvaneto na marshrtuizator s operatsionna sistema Linux i stantsiia s Windows zad nego, paketite ot koiato sa podlozheni na mrezhova adresna translatsiia - NAT. Ako paket ot Windows stantsiiata izleze kum Intenret prez Linux marshrutizatora, to toi shte e s TTL raven na 128 (ako niamashe praviloto v tablitsa mangle za uvelichavane na parametura TTL, shteshe da e sus stoinost 127, a mnogo dostavchitsi filtrirat paketi sus stoinost na TTL, koiato e nechetno chislo). Ako na purviia marshrutizator po putia, dostavchikut pravi opisanie na stoinostta na parametura TTL na izhodiashtite ot vas paketi, toi shte registrira tazi stoinost. Kakvo obache shte se sluchi, ako utre vi se nalozhi da aktualizirate paketite na Linux marshrutizatora ili prosto, ako vurhu nego ima uslugi, koito stantsiiata polzva, a poslednite ot svoia strana izpolzvat vruzkata kum internet? SHTe stane slednoto. Linux marshrutizatora shte izluchva svoite paketi kum Internet (t.e. te shte preminavat prez dostavchika) sus stoinost na parametura TTL ravna na 64. Ako dostavchika naistina pravi opisanie na stoinostta na TTL za izhodiashtite ot vas paketi, to tova shte e iasna indikatsiia, che internet vruzkata e spodelena mezhdu stantsii s razlichen TCP/IP stek (v nashiia primer mezhdu dve stantsii s razlichni TCP/IP stetsi).

Za da nadhitrite dostavchika si i v tozi sluchai, triabva da modifitsirate po sledniia nachin podavanite pravila kum iptables:

- otmenete praviloto, koeto samo inkrementira s edinitsa parametura TTL na izhodiashtite kum dostavchika paketi:

# iptables -t mangle -D POSTROUTING -s 192.168.10.0/24 -o ppp0 -j TTL --ttl-inc 1

- zamenete go s novo pravilo, koeto ukazva vsichki paketi kato izlizashti ot TCP/IP stek na operatsionna sistema Linux (TTL=64):

# iptables -t mangle -A POSTROUTING -s 192.168.10.0/24 -o ppp0 -j TTL --ttl-set 64

Ot gledna tochka na faila /etc/sysconfig/iptables, promenite, koito triabva da se napraviat v nego sa slednite:

*mangle
:PREROUTING ACCEPT [0:0]
:INPUT ACCEPT [0:0]
:FORWARD ACCEPT [0:0]
:OUTPUT ACCEPT [0:0]
:POSTROUTING ACCEPT [0:0]
-A PREROUTING -i ppp0 -j TTL --ttl-inc 1
-A POSTROUTING -s 192.168.10.0/24 -o ppp0 -j TTL --ttl-set 64
COMMIT

Otnovo napomniam, che ako ne izpolzvate PPP vruzka, t.e. ne izpolzvate za svurzvane kum dostavchika protokoli kato PPPoE i PPTP, a izpolzvate direktna eternet svurzanost, to triabva v gornite ukazaniia da zamestite imeto na interfeis ppp0 s imeto na suotvetniia eternet interfeis.

Druga tunkost, koiato tseli da ne budete hvanati, che imate vtori mrezhovi interfeis na mashinata (tova na praktika ne dokazva, che izvurshvate NAT), e da zabranite transliraneto v iadroto na ARP zaiavki (proxy arp), chrez koito da se vidi drug vash interfeis. Za da predotvratite tazi vuzmozhnost postavete sledniia red vuv faila /etc/sysctl.conf:

net.ipv4.conf.all.arp_ignore = 1

Sled tova izpulnete

# sysctl -p

za da vliazat promenite v sila.



<< SonyEricsson i Linuks | Instalirane na nVidia draiver pri Slackware >>
Komentar ot: Hapkoc Data: 13-02-2006
[ Drugi komentari]
Dosta vreme polzvah tazi distributsiia. Standartno v neia niama modula za upravlenie na TTL. Printsipno bi mogul da si kompilirash modula sam, no rabotata ne e trivialna i dokumentatsiiata po vuprosa e oskudna.

Coyote Linux naistina veche ne se razrabotva ofitsialno, no ima naslednik - http://www.brazilfw.com.br/forum/portal... Vizh na tozi sait, mozhe tam da sa vklyuchili poddruzhka za tozi modul.


<< Kum: Vupros... (promeneno) Bravo! >>

Komentari: (obshto 75) Otseneni s ili poveche [Pulen pregled>>]
[Dobavi komentar]

Vashiiat komentar
Ime:
E-Mail: (po zhelanie)
Zaglavie:
E OTGOVOR NA TOZI KOMENTAR(DA)


Opisanie: ?

Vnimanie: Dopulnitelna proverka pri komentari ot neregistrirani potrebiteli.
 MENYU
Tursene | Dobaviane
 ZAGLAVIQ
 1. Podrobno rukovodstvo za ipfw nat
 2. Mikrotik + Openvpn + android
 3. Kak raboti DNS, chast 3 - instalatsiia na DNS cache survur.
 4. Periodichna tablitsa na distributsiite na Linux ...
 5. Kak raboti DNS, chast 2 - Topologiia, Authoritative servers
 6. Intervyu na „Linuks za bulgari“ s Hyusein Ismail
 7. Jabber (XMPP) survur pod Debian Squeeze
 8. Kak raboti DNS, chast 1 - Resolvers i Cache survuri.
 9. Debian, realtek RTL8111/8168B i wireless konfiguratsiia
 10. Vuvedenie v daemontools (DJB Way)
 11. Personalizirane na vunshniia vid na Ubuntu 11.10
 12. DNSCurve, NaCl, CurveCP - suvremenen pogled vurhu zashtitata n
 13. sbopkg
 14. Purva pomosht za desktop s Linuks... chast vtora
 15. Purva pomosht za desktop s Linuks
 16. Ne na Skiap
 17. Instalirane i konfigurirane na Wive na Edimax EW-7209APg
 18. Sigurno elektronno bankirane s Firefox i Linux
 19. Osnovi na iptables
 20. Za ueb brauzura i neprikosnovenostta na lichniia Vi zhivot
 21. Maskirane na VPN tunel
 22. Elektronen podpis na Bankserviz pod Ubuntu 9.10 i 10.04
 23. Elektronen podpis za rabota pod Linux i OpenSSL
 24. FreeBSD 8.0 Obedinenie na niakolko mrezhovi interfeisa v edin
 25. FreeBSD 8.0 Obedinenie na niakolko mrezhovi interfeisa v edin
 PODKATEGORII
 1. Desktop
 2. Sigurnost
 3. Kirilizatsiia
 4. Osnovni znaniia i sredstva
 5. Trikove
 6. Prakticheski opit
 7. Draiveri/Harduer
 8. Linux<->Windows
 9. Failovi sistemi
 10. Mrezha
 11. FreeBSD
 12. Vuzmozhnosti na Linux
 13. Linux iadro
 14. Linux distributsii
 ARHIV
 05 - 2022
 01 - 2017
 03 - 2016
 11 - 2012
 10 - 2012
 09 - 2012
 04 - 2012
 12 - 2011
 05 - 2011
 03 - 2011
 12 - 2010
 07 - 2010
 04 - 2010
 03 - 2010
 01 - 2010
 10 - 2009
 09 - 2009
 08 - 2009
 06 - 2009
 04 - 2009
 02 - 2009
 12 - 2008
 09 - 2008
 05 - 2008
 04 - 2008
 03 - 2008
 02 - 2008
 01 - 2008
 12 - 2007
 11 - 2007
 10 - 2007
 09 - 2007
 07 - 2007
 05 - 2007
 03 - 2007
 02 - 2007
 01 - 2007
 11 - 2006
 10 - 2006
 09 - 2006
 08 - 2006
 07 - 2006
 06 - 2006
 05 - 2006
 04 - 2006
 03 - 2006
 02 - 2006
 01 - 2006
 12 - 2005
 11 - 2005
 09 - 2005
 08 - 2005
 07 - 2005
 06 - 2005
 05 - 2005
 04 - 2005
 02 - 2005
 01 - 2005
 12 - 2004
 11 - 2004
 10 - 2004
 09 - 2004
 08 - 2004
 07 - 2004
 06 - 2004
 05 - 2004
 04 - 2004
 03 - 2004
 02 - 2004
 01 - 2004
 12 - 2003
 11 - 2003
 10 - 2003
 08 - 2003
 07 - 2003
 06 - 2003
 04 - 2003
 03 - 2003
 02 - 2003
 01 - 2003
 12 - 2002
 11 - 2002
 09 - 2002
 08 - 2002
 06 - 2002
 05 - 2002
 04 - 2002
 02 - 2002
 01 - 2002
 11 - 2001
 10 - 2001
 09 - 2001
 08 - 2001
 06 - 2001
 05 - 2001
 03 - 2001
 02 - 2001
 01 - 2001
 10 - 2000
 09 - 2000
 08 - 2000
 07 - 2000
 06 - 2000
 05 - 2000
 03 - 2000
 02 - 2000
 01 - 2000
  -
 VRUZKI
 Linux za nachinaeshti

 
 
© 2011-... Asotsiatsiia "Linuks za bulgari"
© 2007-2010 Linuks za bulgari EOOD
© 1999-2006 Slavej Karadjov
Ako iskate da prepechatate ili tsitirate
informatsiia ot tozi sait prochetete purvo tova
Vunshniia vid e napraven ot webmaker
Code Version: 1.0.8 H (Revision: 23-09-2011)

Èçïúëíåíèåòî îòíå: 1 wallclock secs ( 0.21 usr + 0.04 sys = 0.25 CPU)