Автор Тема: Adsl lan lan adsl i tn  (Прочетена 6244 пъти)

edmon

  • Гост
Adsl lan lan adsl i tn
« -: Jul 15, 2006, 12:17 »
имам следните неща
един комп с три карти

eth0: 87.118.17.250 mask 255.255.255.0
eth1: 192.168.10.1 mask 255.255.255.0
eth2: 192.168.25.1 mask 255.255.255.0

eth2 е ADSL.

като сложа разни такива:
route add -net 212.39.72.0/24 gw 192.168.25.1
route add -net 212.39.65.0/24 gw 192.168.25.1

заявките от 192.168.10.1/24  към http://www.btc.bg минават през този линк eth2
.
Проблема е следния:
имам още един комп с :
eth0: 87.118.17.252 mask 255.255.255.0
eth0:1  192.168.1.1 mask 255.255.255.0

може ли по подобен начин да насоча заявките към определини мрежи ... примерно така:
route add -net 212.39.72.0/24 gw 87.118.17.250

за моженето може... ама ако може и да работи...
така че
ако някой от 192.168.1.1/24 на втората машина иска да гледа
http://www.btc.bg да мине през 87.118.17.250 а от там през ADSL-a
'<img'>)))
mersi
Активен

BRADATA

  • Напреднали
  • *****
  • Публикации: 833
  • Distribution: Slackware/Mint/CentOS
  • Window Manager: console/KDE/LXDE
    • Профил
    • WWW
Adsl lan lan adsl i tn
« Отговор #1 -: Jul 15, 2006, 15:22 »
Би ли описал малко по-подробно мрежовата конфигурация на втората машина? С две карти ли е, каква и е функцията в мрежата етц...
Активен

edmon

  • Гост
Adsl lan lan adsl i tn
« Отговор #2 -: Jul 15, 2006, 20:03 »
втората машина прави НАТ'<img'> през един интерфейс
Активен

BRADATA

  • Напреднали
  • *****
  • Публикации: 833
  • Distribution: Slackware/Mint/CentOS
  • Window Manager: console/KDE/LXDE
    • Профил
    • WWW
Adsl lan lan adsl i tn
« Отговор #3 -: Jul 16, 2006, 00:25 »
Дай route таблиците и на двете машини, защото както описваш ситуацията не трябва да имаш проблем. Също така конфигурациятра на firewall-а на първата машина.
бтв Двате машини виждат ли се? (пинг етц?)
Активен

Hapkoc

  • Напреднали
  • *****
  • Публикации: 2117
    • Профил
Adsl lan lan adsl i tn
« Отговор #4 -: Jul 16, 2006, 12:50 »
Не би трябвало да имаш проблем, мисля, че е достатъчно да включиш препращането на пакети на първата машина:

sysctl -w net.ipv4.ip_forward=1

(net.ipv4.ip_forward=1 го слагаш и в /etc/sysctl.conf).
Активен

edmon

  • Гост
Adsl lan lan adsl i tn
« Отговор #5 -: Jul 16, 2006, 20:00 »
на първата машина рута е:
Примерен код

Kernel IP routing table
Destination     Gateway         Genmask         Flags Metric Ref    Use Iface
87.118.176.0    *               255.255.255.0   U     0      0        0 eth0
192.168.1.0     *               255.255.255.0   U     0      0        0 eth0
192.168.1.0     satlan.zlatogra 255.255.255.0   UG    0      0        0 eth0
212.39.65.0     192.168.25.1    255.255.255.0   UG    0      0        0 eth2
192.168.12.0    *               255.255.255.0   U     0      0        0 eth1
192.168.10.0    *               255.255.255.0   U     0      0        0 eth1
192.168.25.0    *               255.255.255.0   U     0      0        0 eth2
212.39.72.0     192.168.25.1    255.255.255.0   UG    0      0        0 eth2
83.228.40.0     192.168.25.1    255.255.252.0   UG    0      0        0 eth2
83.228.32.0     192.168.25.1    255.255.252.0   UG    0      0        0 eth2
83.228.0.0      192.168.25.1    255.255.224.0   UG    0      0        0 eth2
87.126.128.0    192.168.25.1    255.255.192.0   UG    0      0        0 eth2
87.126.0.0      192.168.25.1    255.255.128.0   UG    0      0        0 eth2
default         zlatograd.net   0.0.0.0         UG    0      0        0 eth0


на втората:
Примерен код

Kernel IP routing table
Destination     Gateway         Genmask         Flags Metric Ref    Use Iface
87.118.176.192  *               255.255.255.192 U     0      0        0 eth0
87.118.176.0    *               255.255.255.0   U     0      0        0 eth0
192.168.1.0     *               255.255.255.0   U     0      0        0 eth0
192.168.11.0    *               255.255.255.0   U     0      0        0 eth0
default         zlatograd.net   0.0.0.0         UG    0      0        0 eth0


'<img'>))
Активен

edmon

  • Гост
Adsl lan lan adsl i tn
« Отговор #6 -: Jul 16, 2006, 21:14 »
така всъщност до сега установих че заявките трагват от втората машина стигат до първата от там минават през АДСЛ-а
ама не се връщат.
т.е.
с tcpdump  виждам на този интерфейс само да излизат.

а също така:
от машината с адсл:
Примерен код
satlan:~# ping http://www.btc.bg
PING http://www.btc.bg (212.39.65.217) 56(84) bytes of data.
64 bytes from 217_65.btc-net.bg (212.39.65.217): icmp_seq=1 ttl=59 time=24.2 ms
64 bytes from 217_65.btc-net.bg (212.39.65.217): icmp_seq=2 ttl=59 time=23.9 ms

--- http://www.btc.bg ping statistics ---
2 packets transmitted, 2 received, 0% packet loss, time 1000ms
rtt min/avg/max/mdev = 23.953/24.121/24.290/0.229 ms
satlan:~# traceroute http://www.btc.bg
traceroute to http://www.btc.bg (212.39.65.217), 30 hops max, 40 byte packets
 1  192.168.25.1 (192.168.25.1)  1.015 ms  1.064 ms  1.005 ms
 2  * * *
 3  * * *
 4  * * *
 5  * * *
...........
и тн


а от машинка зад НАТ-а
Примерен код

C:\Documents and Settings\Admin>tracert -d http://www.btc.bg

Tracing route to http://www.btc.bg [212.39.65.217]
over a maximum of 30 hops:

  1    <1 ms    <1 ms    <1 ms  192.168.10.1
  2     1 ms     1 ms     1 ms  192.168.25.1
  3     *        *        *     Request timed out.
  4     *        *        *     Request timed out.
  5     *        *        *     Request timed out.
  6    27 ms    22 ms    24 ms  212.39.65.217

Trace complete.




Активен

Hapkoc

  • Напреднали
  • *****
  • Публикации: 2117
    • Профил
Adsl lan lan adsl i tn
« Отговор #7 -: Jul 17, 2006, 23:32 »
Значи - понеже гледам, че на двете машини имаш публични адреси (87.118.17.250 и 87.118.17.252), та мисълта ми е такава - ако си сложил маршрут към дадена мрежа на 87.118.17.252 през 87.118.17.250 и си пуснал препращането на пакети на 87.118.17.250, би трябвало (както казваш) пакетите за съответната мрежа да минават през 87.118.17.250 и да отиват до там. На връщане, т.к. на 87.118.17.250 не се осъществява NAT, по какъв маршрут ще минат пакетите зависи от маршрутизаторите по-пътя.

Може би трябва да дадеш малко разяснения относно физическата връзка м/у 87.118.17.250 и 87.118.17.252, а също и към 87.118.17.252 през 87.118.17.250 и си пуснал препращането на пакети на 87.118.17.250, би трябвало (както казваш) пакетите за съответната мрежа да минават през 87.118.17.250 и да отиват до там. На връщане, т.к. на 87.118.17.250 не се осъществява NAT, по какъв маршрут ще минат пакетите зависи от маршрутизаторите по-пътя.

Може би трябва да дадеш малко разяснения относно физическата връзка м/у 87.118.17.250 и 87.118.17.252, а също и към 192.168.1.0/24. Ако правилно съм разбрал, че правиш NAT през картата, на която е конфигуриран и 87.118.17.252 адрес, то не ми се струва много удачно.
Активен

Dean79

  • Напреднали
  • *****
  • Публикации: 151
    • Профил
Adsl lan lan adsl i tn
« Отговор #8 -: Jul 18, 2006, 07:39 »
При наличието на 2 шлюза трябва да бъдеш сигурен, че пакетите ще се връщат през същия интерфейс.
Прочети това:
http://lartc.org/howto/lartc.rpdb.multiple-links.html
Активен

edmon

  • Гост
Adsl lan lan adsl i tn
« Отговор #9 -: Jul 18, 2006, 10:50 »
това го четох'<img'>
обаче явно съм мноо тъп и като направих
резултата беше че нито разбирам кво правя нито
направих нещо,
та искам да кажа че съм се пробвал преди да пиша глупости по форумите.
а двете машини са свързани през суич..
Активен

Hapkoc

  • Напреднали
  • *****
  • Публикации: 2117
    • Профил
Adsl lan lan adsl i tn
« Отговор #10 -: Jul 18, 2006, 11:18 »
Добре де, дай малко подробности. Примерно:

машина едно има такиви и такива интерфейси, те са свързани насам и натам. машина две има такива и такива интерфейси, те са свързани там и там. машините от 192.168.1.0/24 са свързани по ето този начин към машина две. линията от доставчик едно влиза еди къде си, тази от доставчик две - еди къде си.

Може и картинка някаква да направиш за по-нагледно.
Активен

  • Гост
Adsl lan lan adsl i tn
« Отговор #11 -: Jul 18, 2006, 12:22 »
Пейстни си nat таблицата на втория компютър, мисля че се досещам откъде идва проблема...
Активен

edmon

  • Гост
Adsl lan lan adsl i tn
« Отговор #12 -: Jul 18, 2006, 14:02 »
хех ми да пасте-на:
Примерен код

gw:~# iptables -t nat -L
Chain PREROUTING (policy ACCEPT)
target     prot opt source               destination
DNAT       tcp  --  localIP-148          anywhere            tcp dpt:www to:192.168.1.1:8081
DNAT       tcp  --  localIP-24           anywhere            tcp dpt:www to:192.168.1.1:8081
DNAT       tcp  --  localIP-95           anywhere            tcp dpt:www to:192.168.1.1:8081
DNAT       tcp  --  localIP-146          anywhere            tcp dpt:www to:192.168.1.1:8081
DNAT       tcp  --  localIP-56           anywhere            tcp dpt:www to:192.168.1.1:8081
DNAT       tcp  --  localIP-102          anywhere            tcp dpt:www to:192.168.1.1:8081
DNAT       tcp  --  localIP-104          anywhere            tcp dpt:www to:192.168.1.1:8081
DNAT       tcp  --  localIP-144          anywhere            tcp dpt:www to:192.168.1.1:8081
DNAT       tcp  --  localIP-158          anywhere            tcp dpt:www to:192.168.1.1:8081
DNAT       tcp  --  localIP-65           anywhere            tcp dpt:www to:192.168.1.1:8081
DNAT       tcp  --  localIP-76           anywhere            tcp dpt:www to:192.168.1.1:8081
DNAT       tcp  --  localIP-145          anywhere            tcp dpt:www to:192.168.1.1:8081
DNAT       tcp  --  localIP-161          anywhere            tcp dpt:www to:192.168.1.1:8081
DNAT       tcp  --  localIP-164          anywhere            tcp dpt:www to:192.168.1.1:8081
DNAT       tcp  --  localIP-189          anywhere            tcp dpt:www to:192.168.1.1:8081
DNAT       udp  --  anywhere             gw.zlatograd.net    udp dpt:4672 to:192.168.1.125:4672
DNAT       udp  --  anywhere             gw.zlatograd.net    udp dpt:4673 to:192.168.1.11:4673
DNAT       tcp  --  anywhere             gw.zlatograd.net    tcp dpt:5900 to:192.168.1.88:5900
DNAT       udp  --  anywhere             gw.zlatograd.net    udp dpt:4672 to:192.168.1.125:4672
DNAT       tcp  --  anywhere             anywhere            tcp dpt:domain to:192.168.1.1:53
DNAT       udp  --  anywhere             anywhere            udp dpt:domain to:192.168.1.1:53

Chain POSTROUTING (policy ACCEPT)
target     prot opt source               destination
SNAT       all  --  192.168.1.0/24       anywhere            to:87.118.176.252

Chain OUTPUT (policy ACCEPT)
target     prot opt source               destination
Активен

edmon

  • Гост
Adsl lan lan adsl i tn
« Отговор #13 -: Jul 18, 2006, 15:02 »
Цитат (Dean79 @ Юли 18 2006,08:39)
При наличието на 2 шлюза трябва да бъдеш сигурен, че пакетите ще се връщат през същия интерфейс.
Прочети това:
http://lartc.org/howto/lartc.rpdb.multiple-links.html

наистина разбирам това че е нужно да  укажа това от каде да се връщат пакетите.
и също така разбирам че това се прави и управлява с допълнителни таблици .  с ip route.......
но следвайки точно това което е описано не се получи нищо. е само си спрях тотално интернета.
Активен

  • Гост
Adsl lan lan adsl i tn
« Отговор #14 -: Jul 18, 2006, 15:02 »
Цитат
target     prot opt source               destination
SNAT       all  --  192.168.1.0/24       anywhere            to:87.118.176.252


Ето това е проблемa..

За destination-ите, за които ще минава през другата машина SNAT не бива да се прави, защото ще стане следното, когато примерна машина (да речем 192.168.1.5) реши да се свърже с btc.bg:

192.168.1.5 иска да се свърже с http://www.btc.bg:

src 192.168.1.5 dst http://www.btc.bg via 192.168.1.1, syn
(SNAT): src 87.118.176.252 dst http://www.btc.bg via (static route) 192.168.25.1, syn
(forward): src 87.118.176.252 dst http://www.btc.bg via 87.118.176.250
........
syn пакетът достига до http://www.btc.bg, връща се syn-ack, за да се установи връзка:

src http://www.btc.bg dst 87.118.176.252, syn-ack
пакетът се връща обаче по друг маршрут и отговорът отива на съвсем друг интерфейс на машината 192.168.1.1 - на интерфейсът с IP адрес 87.118.176.252. Това става понеже рутерите на доставчика ти нямат идея, че за да стигнат до  87.118.176.252, трябва да минават през  87.118.176.250 (и добре че нямат). Та просто обратния маршрут не минава през  87.118.176.250 и точка.


Сещам се за два начина да се разреши това:

В линукс има едно нещо наречено route path verification - т.е ако отговорът от хост ти се върне по друг интерфейс, а не по този от който се очаква, пакетът просто се дропи. Това е вид защита от spoofing. Така че можеш да пробваш на втората машина да направиш :

echo 0 > /proc/sys/net/ipv4/conf/eth0/rp_filter
echo 0 > /proc/sys/net/ipv4/conf/eth1/rp_filter

за да изключиш този механизъм (и теоретично да си носиш риска от атаки с подправени пакети).

А има и по-добър вариант: просто недей да нат-ваш на втората машина пакети с destination: http://www.btc.bg. Така маршрута на отиване и връщане ще бъде един и същ '<img'>
Активен

Подобни теми
Заглавие Започната от Отговора Прегледи Последна публикация
ADSL от БТК
Хардуерни и софтуерни проблеми
kris_p 16 6061 Последна публикация Jun 17, 2004, 21:20
от Kasho
BTK ADSL
Настройка на хардуер
kris_p 1 2565 Последна публикация Jun 17, 2004, 21:10
от kris_p
ADSL
Идеи и мнения
jivko_66 7 3253 Последна публикация Nov 27, 2004, 16:00
от
adsl->nat->my box
Идеи и мнения
kumara 2 2236 Последна публикация Jan 10, 2005, 16:02
от ntenev
БТК ADSL и Линукс рутер
Настройка на хардуер
Desertleo 14 7183 Последна публикация Jul 06, 2005, 08:14
от