Автор Тема: Мост м/у eth1 i eth2  (Прочетена 6344 пъти)

ChochoD

  • Напреднали
  • *****
  • Публикации: 22
    • Профил
Мост м/у eth1 i eth2
« -: Mar 15, 2008, 08:20 »
Ок, с риск и това да отиде в кошчето (поне този път няма да е заради това, че съм писал на латиница) подкарал съм външната мрежа ( известна още като internet на латинница) на маршрутизатора ( известен на латиница като router) през eth1. Подкарал съм и ЛМ (Локална Мрежа известна като LAN  на латиница) през eth2. 2те мрежи работят, но незнам как да направя мост (известен на латиница като bridge). Ето топологията на мрежата :

                            web server с реално IP
                                         |          
                                         |                debian router
internet (91.92.167.1)----- switch ---- eth1 (91.92.167.90)
                                         |  |
                                         |  |---------eth2 (90.0.0.1)
                                         |
                                       LAN
                                   (90.0.0.X)                        
                                  
Интернета върви на маршрутизатора, мога да пинг-на и LAN-a. Незнам как да задам на eth2 да взема инернет от eth1. Интересува ме как да стане.

(Пробвах варианти (главно с brctl бяха) , вече не помня адресите, но не ставаше.  Затова моля за конкретни указания с тези от примера горе, защото явно някъде съм бъркал като съм следвал примерите)



Активен

luda_glawa

  • Напреднали
  • *****
  • Публикации: 652
  • Distribution: Kubuntu
  • Window Manager: KDE
    • Профил
    • WWW
Мост м/у eth1 i eth2
« Отговор #1 -: Mar 15, 2008, 09:24 »
//offtopic
Виж първата си тема, виж и тази и ми кажи коя е по-добра? Да ти кажа за мен има разлика. Не е причина само кирилицата. Хубаво е да даваш повече информация.

//ontopic
Така. Доколкото разбирам (поправи ме ако греша) мрежата си я настроил - просто маршрутизатора не прехвърля пакетите от едната мрежа в другата. Ако е само това т.е. настроил си правилните мрежови адреси, маски, "gateway" адреси и просто не минават пакети през рутера - пробвай тази команда:

Примерен код
echo 1 > /proc/sys/net/ipv4/ip_forward


Имай предвид, че това решение е валидно, докато не спреш/ рестартираш компютъра. За да го направиш постоянно трябва да добавиш

Примерен код
net.ipv4.conf.default.forwarding=1


в /etc/sysctl.conf

Относно шейпинг-а, кажи какво искаш да постигнеш. Иваче командата, която ти трябва е - "iptables". Но там нещата са груби, затова те питам какво точно искаш да постигнеш.

P.S. Хубаво е да дадеш и изхода от командата "route".



Активен

С Уважение:

Luda Glawa ;-)

BRADATA

  • Напреднали
  • *****
  • Публикации: 833
  • Distribution: Slackware/Mint/CentOS
  • Window Manager: console/KDE/LXDE
    • Профил
    • WWW
Мост м/у eth1 i eth2
« Отговор #2 -: Mar 15, 2008, 13:20 »
Цитат (ChochoD @ Март 15 2008,09:20)
Ок, с риск и това да отиде в кошчето (поне този път няма да е заради това, че съм писал на латиница) подкарал съм външната мрежа ( известна още като internet на латинница) на маршрутизатора ( известен на латиница като router) през eth1. Подкарал съм и ЛМ (Локална Мрежа известна като LAN  на латиница) през eth2. 2те мрежи работят, но незнам как да направя мост (известен на латиница като bridge). Ето топологията на мрежата :

                            web server с реално IP
                                         |          
                                         |                debian router
internet (91.92.167.1)----- switch ---- eth1 (91.92.167.90)
                                         |  |
                                         |  |---------eth2 (90.0.0.1)
                                         |
                                       LAN
                                   (90.0.0.X)
Интернета върви на маршрутизатора, мога да пинг-на и LAN-a. Незнам как да задам на eth2 да взема инернет от eth1. Интересува ме как да стане.

(Пробвах варианти (главно с brctl бяха) , вече не помня адресите, но не ставаше.  Затова моля за конкретни указания с тези от примера горе, защото явно някъде съм бъркал като съм следвал примерите)

Абе аз така като гледам май на момчето не му е много ясно какво точно иска да прави... Идват ми няколко предположения (той ще каже кое е правилното):
1. Разглеждайки картинката забелязвам само публични адреси, но си мисля, че мрежата 90.0.0.0/24 не трябва да е такава, а частна. Ако това предположение е вярно то трябва да се разреши IP forwarding на дебианския сървър и да се активира snat или masquerade на eth1. Също така изниква въпроса защо са набучени всички в един суич?
2. Ако наистина всички адреси са публични то на дебианския рутер трябва да се разреши IP forwarding и да се опишат в рутинг таблицата на internet мрежите зад дебианския сървър. Въпроса за суича седи и тук...
3. Спря тока на кълбото ...  ':p'
Активен

KPETEH

  • Напреднали
  • *****
  • Публикации: 584
    • Профил
Мост м/у eth1 i eth2
« Отговор #3 -: Mar 15, 2008, 14:40 »
ха ха ха брадата кефиш ме ми то цялата схема е грешна
особео с eth2 който не е ясно на дебианската машина ли е или просто е пльоснат ей така за да запълни схемата :-)



Активен

Най-добрата страна на алчността е способността и да стопява коефициента на интелигентност дори на най-умния човек.

p3tzata_

  • Напреднали
  • *****
  • Публикации: 210
  • Distribution: Fedora
  • Window Manager: KDE
    • Профил
Мост м/у eth1 i eth2
« Отговор #4 -: Mar 15, 2008, 20:04 »
Момчето иска нещо просто, но явно не може да го обясни.
Но тои не знае, че аз мога да чета мисли   '<img'>

Така той има web server с реално IP , но него не го закачаме.
После има комп. с линукс, който има релно IP 91.92.167.90 и gateway 91.92.167.1 на мрежова платка eth1, на който е подкарал интернета, това е добре.

Ти искаш да даваш интернет на други комп. от този линукс.

На платката eth2 слагаш ип 192.168.0.1 с маска 255.255.255.0 без gateway
На другите комп. слагаш ип-та от порядака на 192.168.0.х с gateway 192.168.0.1 и dns които ти е дал доставчика.
Следните команди трябва да ги испълниш на линукса
Примерен код

#iptables -F
#iptables -t nat -F
#iptables -t mangle -F
#iptables -X

#iptables -t nat -A POSTROUTING -s 192.168.0.0/24 -o eth1 -j SNAT --to-source 91.92.167.90

iptables разбирасе трябва да бъде стартирана
трябва да добавиш
net.ipv4.conf.default.forwarding=1
в /etc/sysctl.conf
после
Примерен код
#sysct -p

И те съветвам да исползваш тази топология
Примерен код
                                                    debian router
internet (91.92.167.1)------switch------- eth1 (91.92.167.90)
                                         |                 |
                   web server с реално IP        |
                                                           | (връзката е вътре в машината)
                                                 eth2 (192.168.0.1)
                                                           |
                                                       switch
                                                         |  |
                                                         LAN
                                                     (192.168.0.X)


Би трябвало това да е...

П.П.

Никой няма да ти се кара, ако напишеш с латиница LAN, router, bridge даже е желателно, като аз направих едно предложение тук



Активен

Никое ДОБРО не води до ДОБРО и никое ЗЛО не води до ЗЛО.

ChochoD

  • Напреднали
  • *****
  • Публикации: 22
    • Профил
Мост м/у eth1 i eth2
« Отговор #5 -: Mar 15, 2008, 22:43 »
eth1 и eth 2 са в дебиан рутера.
luda_glava ме е разбрал най-точно. Подкарал съм нета на рутера през  eth1, като и локалната мрежа през eth2.

1. искам eth2 да взема нет от eth1
2. рутера да шейпва скороста към отделните IPта от мрежата 90.0.0.Х
3. Да филтрира достъпа до интернет на отделните IPта от мрежата 90.0.0.Х

общо взето това е което искам, но зациклих на 1ва точка още...

всичко което ми предлагате мога да го пробвам в понеделник (тъй като тогава съм на бачкане и мога да го пробвам и да дам отговор какво е станало).



Активен

VladSun

  • Напреднали
  • *****
  • Публикации: 2166
    • Профил
Активен

KISS Principle ( Keep-It-Short-and-Simple )
http://openfmi.net/projects/flattc/
Има 10 вида хора на този свят - разбиращи двоичния код и тези, които не го разбират :P

BRADATA

  • Напреднали
  • *****
  • Публикации: 833
  • Distribution: Slackware/Mint/CentOS
  • Window Manager: console/KDE/LXDE
    • Профил
    • WWW
Мост м/у eth1 i eth2
« Отговор #7 -: Mar 16, 2008, 18:40 »
Цитат (ChochoD @ Март 15 2008,23:43)
eth1 и eth 2 са в дебиан рутера.
luda_glava ме е разбрал най-точно. Подкарал съм нета на рутера през  eth1, като и локалната мрежа през eth2.

1. искам eth2 да взема нет от eth1
2. рутера да шейпва скороста към отделните IPта от мрежата 90.0.0.Х
3. Да филтрира достъпа до интернет на отделните IPта от мрежата 90.0.0.Х

общо взето това е което искам, но зациклих на 1ва точка още...

всичко което ми предлагате мога да го пробвам в понеделник (тъй като тогава съм на бачкане и мога да го пробвам и да дам отговор какво е станало).

Приятелю, съветвам те първо да попрочетеш нещо отгоре-отгоре за мрежовата топология и принцип на действие и едва тогава да сядаш да правиш такива сложни неща. Ще ти задам няколко въпроса (някои заяждачески, някои по същество):
1. Къде ще го "носи" този "нет" eth2 като го "вземе" от eth1?
2. "Скоростта" на какво трябва да се шейпва?
      2.1. Какво ще стане ако някой си сложи сам IP от мрежата 91.92.167.0/24 и това IP се окаже свободно?
3. Какво означава за теб "филтриране" на достъп?
      3.1. Какво ще стане ако някой си сложи сам IP от мрежата 91.92.167.0/24 и това IP се окаже свободно?


Не се обиждай, но "зациклянето" ти е породено именно от незнание, а за него не можеш да се оправдаваш защото на този сайт има няколко доста добри статии относно решаване  на мрежови проблеми.

Поздрави и успех в начинанието. Надявам се клиентите ти да имат търпението да те изчакат докато се научиш да правиш нещата поне малко от малко...
Активен

ChochoD

  • Напреднали
  • *****
  • Публикации: 22
    • Профил
Мост м/у eth1 i eth2
« Отговор #8 -: Mar 17, 2008, 11:11 »
BRADATA,
1.eth2 трябва да взема нет от eth1 и да го пуска на lan-a 90.0.0.X.,
2. Скоростта на interneta на user-ите от lan-a (90.0.0.x)
3. филтъра е по IP и MAC



Активен

ChochoD

  • Напреднали
  • *****
  • Публикации: 22
    • Профил
Мост м/у eth1 i eth2
« Отговор #9 -: Mar 17, 2008, 11:49 »
Цитат (p3tzata_ @ Март 15 2008,21:04)
Момчето иска нещо просто, но явно не може да го обясни.
Но тои не знае, че аз мога да чета мисли   '<img'>

Така той има web server с реално IP , но него не го закачаме.
После има комп. с линукс, който има релно IP 91.92.167.90 и gateway 91.92.167.1 на мрежова платка eth1, на който е подкарал интернета, това е добре.

Ти искаш да даваш интернет на други комп. от този линукс.

На платката eth2 слагаш ип 192.168.0.1 с маска 255.255.255.0 без gateway
На другите комп. слагаш ип-та от порядака на 192.168.0.х с gateway 192.168.0.1 и dns които ти е дал доставчика.
Следните команди трябва да ги испълниш на линукса
Примерен код

#iptables -F
#iptables -t nat -F
#iptables -t mangle -F
#iptables -X

#iptables -t nat -A POSTROUTING -s 192.168.0.0/24 -o eth1 -j SNAT --to-source 91.92.167.90

iptables разбирасе трябва да бъде стартирана
трябва да добавиш
net.ipv4.conf.default.forwarding=1
в /etc/sysctl.conf
после
Примерен код
#sysct -p

И те съветвам да исползваш тази топология
Примерен код
                                                    debian router
internet (91.92.167.1)------switch------- eth1 (91.92.167.90)
                                         |                 |
                   web server с реално IP        |
                                                           | (връзката е вътре в машината)
                                                 eth2 (192.168.0.1)
                                                           |
                                                       switch
                                                         |  |
                                                         LAN
                                                     (192.168.0.X)


Би трябвало това да е...

П.П.

Никой няма да ти се кара, ако напишеш с латиница LAN, router, bridge даже е желателно, като аз направих едно предложение тук

p3tzata_, пробвах твоя вариант и топология но ето докъде стигнах:

/etc# iptables -F
/etc# iptables -t nat -F
/etc# iptables -t mangle -F
/etc# iptables -X
:/etc# iptables -t nat -A POSTROUTING -s 192.168.0.1/24 -o eth1 -j SNAT -to-source 91.92.167.90

Bad argument `91.92.167.90'
Try `iptables -h' or 'iptables --help' for more information.



Активен

neter

  • Global Moderator
  • Напреднали
  • *****
  • Публикации: 3408
  • Distribution: Debian, SailfishOS, CentOS
  • Window Manager: LXDE, Lipstick
    • Профил
    • WWW
Мост м/у eth1 i eth2
« Отговор #10 -: Mar 17, 2008, 12:55 »
Цитат
:/etc# iptables -t nat -A POSTROUTING -s 192.168.0.1/24 -o eth1 -j SNAT -to-source 91.92.167.90

Не, не така. Първо, пише се --to-source (с две тирета отпред) и второ, това е правилото, което ти трябва
Примерен код
/sbin/iptables -t nat -A POSTROUTING -o eth1 -s 192.168.0.0/24 -j MASQUERADE

Това ще маскира цялата мрежа 192.168.0.0/24 (което значи с маска 255.255.255.0). По-добре е да изпълняваш това правило за всеки отделен хост. Пример
Примерен код
/sbin/iptables -t nat -A POSTROUTING -o eth1 -s 192.168.0.2 -j MASQUERADE
/sbin/iptables -t nat -A POSTROUTING -o eth1 -s 192.168.0.5 -j MASQUERADE

Още, нужно е да направиш и нещата, които ти е описал luda_glawa и още, надявам се че си преправил схемата на мрежата да бъде такава, каквато ти казах '<img'>



Активен

"Да си добре приспособен към болно общество не е признак за добро здраве" - Джиду Кришнамурти

ChochoD

  • Напреднали
  • *****
  • Публикации: 22
    • Профил
Мост м/у eth1 i eth2
« Отговор #11 -: Mar 17, 2008, 13:34 »
Сегашната топология е такава

                      web server с реално IP
                                         |          
                                         |                debian router
internet (91.92.167.1)----- switch ---- eth1 (91.92.167.90)
                                          
                                                      eth2 (192.168.0.1)--------switch--------LAN(192.168.0.X)
                                                       (eth1 и eth 2 са в дебиан рутера.)
Активен

ChochoD

  • Напреднали
  • *****
  • Публикации: 22
    • Профил
Мост м/у eth1 i eth2
« Отговор #12 -: Mar 17, 2008, 13:42 »
/sbin# /sbin/iptables -t -nat -A POSTROUTING -o eth2 -s 192.168.0.0/24 -j MASQUERADE
iptables v1.3.6: can't initialize iptables table `-nat': Table does not exist (do you need to insmod?)
Perhaps iptables or your kernel needs to be upgraded.
Активен

kbanev

  • Напреднали
  • *****
  • Публикации: 81
  • Distribution: Debian, Mandriva
  • Window Manager: KDE
    • Профил
Мост м/у eth1 i eth2
« Отговор #13 -: Mar 17, 2008, 13:56 »
Без (-) тирето при nat
Примерен код
/sbin/iptables -t nat -A POSTROUTING -o eth2 -s 192.168.0.0/24 -j MASQUERADE
Активен

ChochoD

  • Напреднали
  • *****
  • Публикации: 22
    • Профил
Мост м/у eth1 i eth2
« Отговор #14 -: Mar 17, 2008, 14:55 »
ок, всичко върви (засега).
сега стигаме до стъпка 2 - филтриране по IP i MAC...
Благодаря на всички потрудили се за да успея да направя bridge-a.
Активен

Подобни теми
Заглавие Започната от Отговора Прегледи Последна публикация
eth1 up or down
Настройка на хардуер
delirious 2 1853 Последна публикация Dec 03, 2004, 11:22
от
Eth2 на мястото на eth0
Настройка на хардуер
stefan0 1 2018 Последна публикация Aug 07, 2007, 19:53
от dedmin
Iptables и eth2
Настройка на програми
ArToS 2 2221 Последна публикация Oct 30, 2008, 18:52
от ArToS
Проблеми с eth2, BIND на Ubuntu 8.10 Desktop
Настройка на програми
mitkomihov 7 4282 Последна публикация Mar 17, 2010, 16:33
от mitkomihov
Как да направя мост между ppp0 eth2
Хардуерни и софтуерни проблеми
runtime 10 3847 Последна публикация Feb 07, 2016, 16:38
от BRADATA