Автор Тема: Route and iptables  (Прочетена 4433 пъти)

flipz

  • Напреднали
  • *****
  • Публикации: 87
    • Профил
Route and iptables
« -: Aug 31, 2008, 16:03 »
Здравейте имам локална мрежа която съм сегментирал с управляем switch чрез Vlan. Използвам slackware 12.1 за рутер и се чудя как да рутирам или редиректна с iptables даден адрес в случеят на моето пц- за да виждам всички сигменти от мрежата.
Схемата е следната:

1 port = vlan2
2 port = vlan3
3 port = vlan4
9 port е включен във всички vlan-и и съответно вижда всички портове, именно той е за интернет-а и идва от rutera
* класическа схема '<img'>

та се чудя как е по удачно, чрез рутиране .. или iptables

благодарен съм за всяка идея.



Активен

flipz

  • Напреднали
  • *****
  • Публикации: 87
    • Профил
Route and iptables
« Отговор #1 -: Aug 31, 2008, 16:46 »
вече се справих ..

Forward source i destination
Активен

flipz

  • Напреднали
  • *****
  • Публикации: 87
    • Профил
Route and iptables
« Отговор #2 -: Sep 09, 2008, 17:21 »
в същност не се получи както трябва. има нереални стойности в отговорите ...


някой може ли да даде съвет по темата
Активен

p3tzata_

  • Напреднали
  • *****
  • Публикации: 210
  • Distribution: Fedora
  • Window Manager: KDE
    • Профил
Route and iptables
« Отговор #3 -: Sep 09, 2008, 17:46 »
Обърках се ...



Активен

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

gat3way

  • Напреднали
  • *****
  • Публикации: 6050
  • Relentless troll
    • Профил
    • WWW
Route and iptables
« Отговор #4 -: Sep 09, 2008, 20:17 »
Предполагам сегментацията също така е и на L3 ниво, демек отделните влан-ове са и също отделни IP subnets?

Ммм...предполагам си заредил 8021q модула и си си създал 3 vlan интерфейса с vconfig?

Ем останалото е просто, просто им вдигни някакъв адрес, вдигни ip forwarding-a (echo 1 > /proc/sys/net/ipv4/ip_forward), на клиентските машини сет-вай съответните routes през съответния адрес и готово. iptables и някакви специални статични routes не ти трябват.
Активен

"Knowledge is power" - France is Bacon

flipz

  • Напреднали
  • *****
  • Публикации: 87
    • Профил
Route and iptables
« Отговор #5 -: Sep 10, 2008, 09:47 »
не ползвам 802.1q само съм разделил на vlani както съм описал по горе. нямам и отделни IP subnets - просто ми беше необходимо да се изолират сигментите за да се намали натоварването и да не се пълнят мак-таблиците на суичовете.
echo 1 > /proc/sys/net/ipv4/ip_forward -това ми е активно

съответните клиентски машини не мога да ги обходя всички- това не е добър алгоритъм .. те си имат gw и той е този по който получават интернет от сървъра т.е. както съм писал по горе.

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

gat3way

  • Напреднали
  • *****
  • Публикации: 6050
  • Relentless troll
    • Профил
    • WWW
Route and iptables
« Отговор #6 -: Sep 10, 2008, 09:56 »
На каква картичка да ги видиш?
Активен

"Knowledge is power" - France is Bacon

flipz

  • Напреднали
  • *****
  • Публикации: 87
    • Профил
Route and iptables
« Отговор #7 -: Sep 10, 2008, 10:02 »
имам си едно програмче на което са ми начертани магистралите на мрежичката и сигментите .. като съответно на различни места съм си изкарал пц-та .. програмата работи с пингване .. и когато някое пц. е вкл. тя си го пингва и ми дава, че там работи. т.е. сутрин докато си пия кафенцето виждам дали цялата мрежа работи и дали някъде не е забило устройство.
Активен

gat3way

  • Напреднали
  • *****
  • Публикации: 6050
  • Relentless troll
    • Профил
    • WWW
Route and iptables
« Отговор #8 -: Sep 10, 2008, 10:19 »
Ем значи от цялата работа разбирам, че рутера ти е вързан на порт, който е member на всичките vlan-и и искаш той да ти прави inter-vlan рутиране така че машините в отделните влан-и да си имат L2 изолация, но на L3 ниво да се виждат, благодарение на това, че рутерът ти forward-ва пакети между отделните влан-и.

Ако това е целта на занятието (доколкото разбирам е това - искаш машина от един влан сегмент да "вижда" по IP протокола хост от друг влан, за да ти го изобрази там на твоята карта), значи нещата са доста доволно ясни.

Първо, винаги когато правиш локална мрежа, цепиш я на влан-и с идеята да има inter-vlan routing, хостовете в отделните влан сегменти им се дават IP адреси от отделни IP събнети. Това е с идеята да е възможен routing decision-a на рутера, който се занимава с това. Значи не може в единия влан да имаш хостове с адреси (пр.) 192.168.1.3, 192.168.1.5, а на другия да имаш хостове с адреси 192.168.1.2 и 192.168.1.4, както разбираш ще стане каша и рутерът няма да знае пакетите с какъв VLAN id да ти ги таг-не така че да отидат където трябва.

Само по себе си, ако рутерът е под линукс това не е достатъчно. Без определени iptables правила които да NAT-ват, няма как рутинг решението да хване и да препрати пакет от/към един и същ интерфейс. И тъй като това с iptables е грозно и не съм много наясно дали ще сработи като хората, продължаваме нататък '<img'>

Значи се дефинират върху този физически интерфейс (eth0 ли беше) 3 vlan интерфейса - демек eth0.2, eth0.3, eth0.4. Това става с vconfig. Тези три интерфейса имат съответно IP адрес. Този адрес се ползва от машините от съответния сегмент като default gateway.

Оттам нататък, рутерът ти вече има грижата да препраща пакети между отделните влан-и.

Значи не знам дали ползваш DHCP, ако ползваш всичко ще е много лесно и почти безболезнено, просто променяш дефинициите за leases, вкл. и адреса на default gw-a, както и ако се наложи адресите които раздаваш така че да IP subnet-ите да съвпадат с влан сегментите.

Ако не ползваш dhcp тогава е много грозно, трябва да ходиш на всяка една машина и да й променяш настройките, което е свръх-досадно и може и да се окаже невъзможно.


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



Активен

"Knowledge is power" - France is Bacon

flipz

  • Напреднали
  • *****
  • Публикации: 87
    • Профил
Route and iptables
« Отговор #9 -: Sep 10, 2008, 10:57 »
значи точно така аз и в началото съм го писал, че порта вижда вс.останали който не се виждат помежду си. те са access не са trunk защото нали клиентските машини са Win и на повечето не може да се прави vlan та съответно нямам подобни и няма смисал да създавам vlan-и на eth0 което както каза ми е GW за клиентите.

целта е: влан2 в който участват порт1 и порт9 на суича и влан3 в който са порт2 и порт9 да не се виждат по между си.

т.е. всички пц-та на порт1 и на порт2 нямат достъп т.е. са отделни сигменти. изолирани са .. не знам как точно се нарича дали е порт-мапинг или каквото и да е .. осъществява се с vlan то всеки различно го нарича изглежда.
Това е конфигурацията която съм направил:
set vlan 2 add port 1,9 untag
set vlan 3 add port 2,9 untag
set vlan 4 add port 3,9 untag
set vlan 100 add port 1-3,9 untag
set port 1 pvid 2
set port 2 pvid 3
set port 3 pvid 4
set port 9 pvid 100
set vlan 2-4,100 fid 5
set vlan 2-4,100 enable

И сега сървърът е вкл. към порт9 той вижда вс-те клонове и идеята ми е.
да направя по някакъв начин примерно едно IP да може да вижда всички пц-та както ги вижда и сървърът.

примерно моето пц е на 2порт и искам да пинг-на клиент от 3порт. и това да се случи чрез сървърът понеже той вижда всичко. нещо предполагам с Forward Postrouting i etc. трябва да стане .. но незнам точно как все още.
Активен

gat3way

  • Напреднали
  • *****
  • Публикации: 6050
  • Relentless troll
    • Профил
    • WWW
Route and iptables
« Отговор #10 -: Sep 10, 2008, 11:33 »
Сървърът ги "вижда" защото е вързан на порт - член на всичките там влан-и.

Значи ти все пак трябва да имаш inter-vlan рутиране така че машина от единия vlan да вижда машини от другия vlan.

Ако искаш да ограничиш това само до определен хост от дадения vlan, тогава си слагаш съответните правила във FORWARD.

Vlan интерфейси създаваш не защото изключително много държиш да си "оцветяваш" трафика. Въпросът е че сървърът ти когато види пакет "идващ" от хост от единия vlan/subnet трябва да го forward-не към хоста от другия vlan/subnet. Routing decision-a се взема на база destination адреса и пакетът се препраща към интерфейса, чиито адрес/маска съответстват на destination-a (или има специално набит статичен маршрут, ако не отговаря на двете - минава през default gw-a).

Ако отделните vlan сегменти не са и отделни събнети, първо пакет изпратен от един хост от сегмента няма да тръгне да "излиза" през рутера ти, т.е за него този хост ще бъде в същият етернет сегмент и ще почне да се опитва да го открие чрез arp заявки.

Но да речем че на този хост има нещо от сорта на route add dst_host gw server_ip и тогава тези пакети да се опитват да се рутират през твоят сървър.

Твоят сървър ще види един пакет, идващ от eth0 и предназначен за друг хост, принадлежащ на събнета на eth0. Routing decision няма да се вземе въобще и няма да има кой да каже "изпрати обратно този пакет през eth0".

Компромисен вариант има, разбира се. На хоста, на който си чертаеш картата набиваш по един статичен маршрут до другите хостове през рутера, на рутера слагаш по едно  SNAT правило за целта iptables -t nat -A POSTROUTING -s srcip -d dstip -j SNAT --to-source routerip, тогава вероятно да - ще стане (ще е желателно разните icmp redirects на сървъра да се забранят - echo 0 > /proc/sys/net/ipv4/conf/eth0/send_redirects). Но това е грубо решение.
Активен

"Knowledge is power" - France is Bacon

bulg

  • Напреднали
  • *****
  • Публикации: 916
  • Distribution: *bsd/linux
  • Животът е тръпка... иначе живот ли е това...
    • Профил
    • WWW
Route and iptables
« Отговор #11 -: Sep 10, 2008, 11:57 »
flips, с молба за линк/име на програмчето-картичка?
Активен

http://www.youtube.com/watch?v=9rX8Fn-YJpI
---------------------------------------------------------------------
http://cleargreen.com

flipz

  • Напреднали
  • *****
  • Публикации: 87
    • Профил
Route and iptables
« Отговор #12 -: Sep 10, 2008, 13:21 »
gat3way: благодаря, точно за тази команда се борих, но не ми дойде на ум как да я формулирам .. т.е. както ми я написа.
сега ще опитам .. само да видя опита на cern и до къде са я закарали с този 'адронен ускорител'
Активен

1010

  • Напреднали
  • *****
  • Публикации: 18
    • Профил
Route and iptables
« Отговор #13 -: Sep 10, 2008, 15:17 »
set vlan 2 add port 1,9 untag
set vlan 3 add port 2,9 untag
set vlan 4 add port 3,9 untag
set vlan 100 add port 1-3,9 untag

Искам да попитам ако съм разбрал правилно...на въпросния 9 порт всички vlain id-та са  access ( untagged ) ? и
Каква марка е комутатора?
Активен

flipz

  • Напреднали
  • *****
  • Публикации: 87
    • Профил
Route and iptables
« Отговор #14 -: Sep 12, 2008, 11:30 »
ами то си пише, но да access са

ZTE 16 портов
Активен

Подобни теми
Заглавие Започната от Отговора Прегледи Последна публикация
route
Настройка на програми
ivanatora 2 1653 Последна публикация Jul 19, 2003, 09:07
от mrvoland
route-иране
Настройка на програми
Soulstealer 2 1140 Последна публикация Jul 12, 2004, 19:57
от avatar3000
route
Настройка на програми
dido_333 2 1291 Последна публикация Oct 01, 2004, 16:26
от n_antonov
Защо 'route' се изпълнява бавно (15 секунди)?
Настройка на програми
nobby 3 1302 Последна публикация Dec 11, 2004, 17:40
от zazzko
route ???
Настройка на програми
milenjs 3 1377 Последна публикация Feb 09, 2005, 00:19
от temsata