Linux за българи: Форуми

Linux секция за начинаещи => Настройка на програми => Темата е започната от: spritable в Jun 02, 2006, 13:35



Титла: 1 adsl -> 2 вътрешни мрежи
Публикувано от: spritable в Jun 02, 2006, 13:35
Значи, имам една машина под федора 2, която ползвам като рутер (iptables), уеб сървър, днс. На нея имам 2 мрежови карти. Едната за АДСЛ-а, другата за вътрешната ми мрежа (192.168.0.254).

Искам да направя втора вътрешна мрежа (напр. 192.168.3.ххх), която да НЕ може да вижда компютрите от 192.168.0.ххх мрежата, но да може ползва интернет.

Има ли възможност да се направи това без да се слага 3-та мрежова карта на рутер-а? Ако няма какви трябва да са настройките за да се рутира правилно?


Титла: 1 adsl -> 2 вътрешни мрежи
Публикувано от: в Jun 02, 2006, 16:03
Да на мрежовата карта 192.168.0.ххх и ако интерфейса е eth0 пишеш
#ifconfig eth0:1 192.168.3.xxx netmask 255.255.255.0

Трябва да направиш скриптче което при всяко рестартиране да зарежда тази настройка


Титла: 1 adsl -> 2 вътрешни мрежи
Публикувано от: Йордан в Jun 02, 2006, 16:55
Цитат (Guest @ Юни 02 2006,16:03)
Да на мрежовата карта 192.168.0.ххх и ако интерфейса е eth0 пишеш
#ifconfig eth0:1 192.168.3.xxx netmask 255.255.255.0

Трябва да направиш скриптче което при всяко рестартиране да зарежда тази настройка

и накрая реда трябва да завърши с up Все пак трябва да се вдигне. Има и второ решение. То е може би по-ефикасно... само дето не си спомням как се изпълняваше. Но смисалът му е следния: Двете мрежи се дифинират - ИП'та и маски. И след това се правеше... не знам какво, за да могат да ползват шлюз извън обсега на мрежата си


Титла: 1 adsl -> 2 вътрешни мрежи
Публикувано от: в Jun 02, 2006, 17:57
Ако наистина не трябва да се "виждат" не може, не се заблуждавайте.


Титла: 1 adsl -> 2 вътрешни мрежи
Публикувано от: spritable в Jun 05, 2006, 11:01
Благодаря за отговорите.

Всичко тръгна както трябва с новите адреси. Направив ifcfg-eth0:0 с новите настройки и сега всичко си пали даже при рестарт.

Но, найстина както gat3way казва, компютрите от другата мрежа се виждат.

Има ли някакъв начин да не се виждат?

Четох някакви статии за начин да не се виждат, но там дават пример ако има 3-та мрежова карта и се следят всички пакети минаващи за там и се дропят или нещо от сорта??!?!


Титла: 1 adsl -> 2 вътрешни мрежи
Публикувано от: Hapkoc в Jun 05, 2006, 11:07
Принципно наистина няма как да стане да не се виждат, при положение, че използват един и същи физически сегмент. Една мрежова карта струва около 10 лева, така че бих ти препоръчал да си закупиш една и да си решиш проблема.


Титла: 1 adsl -> 2 вътрешни мрежи
Публикувано от: Mitaka в Jun 05, 2006, 11:49
ifconfig eth1:0 192.168.3.1 netmask 255.255.255.xxx

Където xxx = 255 - (х+2) + 1, х - броя на компютрите, които ще са в мрежа 192.168.3.0.

Например, ако ще ползваш 6 компютъра в мрежа 192.168.3.0:

255 - 8 + 1 = 248, за маската се получава: 255.255.255.248, или:
192.168.3.0/29.

Адрес 192.168.3.1 ще бъде gateway-a за новата ти мрежа.
Broadcast-a ще бъде 192.168.3.7
Накрая:
iptables -A INPUT -s 192.168.0.0/24 -d 192.168.3.0/29 -j REJECT

Конфигурирана по този начин, мрежа 192.168.3.0 не би трябвало да вижда 192.168.0.0.

Реално използваеми в случая са 6 адреса. За това важи правилото: брой компютри + 2. (защото винаги първият и последният адрес от новосъздадената мрежа са неизползваеми! В случая, за да не стават грешки, пояснявам: 1-вия адрес е 192.168.3.0, а последният - 192.168.3.7, реално използваеми - от 192.168.3.1 до 192.168.3.6)

И един съвет: Като си правите мрежи, не лепвайте по "default" маска 255.255.255.0, а си направете сметка колко компютъра ще имате в мрежата, и си сметнете съответните маски. Ако не знаете как - ask google :)

Това би ви помогнало:

ххх = 255 - (х+2) + 1


Титла: 1 adsl -> 2 вътрешни мрежи
Публикувано от: Hapkoc в Jun 05, 2006, 12:09
Митак, нещо не стоплям как така добавяйки правило за REJECT на пакети от едната мрежа към другата ще стане номера. Това правило ще работи при условие, че всички пакети от едната мрежа за към другата минават през шлюза, а при положение, че машините имат физическа свързаност какво ще накара примерно при:

ping 192.168.0.2

изпълнен от машина от другата мрежа да пусне пакета през шлюза?

Аз поне си мисля, че при arp заявка за 192.168.0.2 самата машина с такъв адрес ще върне своя си MAC.


Титла: 1 adsl -> 2 вътрешни мрежи
Публикувано от: Йордан в Jun 05, 2006, 12:12
А някой ще каже ли за какво се ползват различни маски? Или просто ей така си ги слагаме? Защото или аз не съм разбрал или ... вече не знам... Ама маските пряко се отнасят до видимуста на две мрежи ?!?!


Титла: 1 adsl -> 2 вътрешни мрежи
Публикувано от: laskov в Jun 05, 2006, 12:17
Цитат (Hapkoc @ Юни 05 2006,12:07)
Принципно наистина няма как да стане да не се виждат, при положение, че използват един и същи физически сегмент. Една мрежова карта струва около 10 лева, така че бих ти препоръчал да си закупиш една и да си решиш проблема.

И трябва да имаш отделни суичове за всяка от мрежите, ако Hapkoc позволи да го допълня. Друг "културен" вариант е ако суича ти поддържа vlan 802.1q  да си разделиш физическата LAN на две виртуални. Едно четиво





Титла: 1 adsl -> 2 вътрешни мрежи
Публикувано от: melwin в Jun 05, 2006, 12:27
Мисля си ,че най лесният вариант е да пуснеш arp proxy на мрежовата карта. Така си гарантираш ,че целият трафик ще минава от там - съответно имаш пълен контрол кой,кого и как вижда.

echo 1 > /proc/sys/net/ipv4/conf/eth0/proxy_arp


Титла: 1 adsl -> 2 вътрешни мрежи
Публикувано от: Hapkoc в Jun 05, 2006, 12:47
Хубаво де, ама някой като прати ARP заявка и получи два отговора какво ще стане (наистина си нямам идея)? Т.е. в случая ще отговори и самата машина с такъв IP адрес и шлюза, който е настроен да работи в proxy arp режим.


Титла: 1 adsl -> 2 вътрешни мрежи
Публикувано от: melwin в Jun 05, 2006, 13:09
Цитат (Hapkoc @ Юни 05 2006,13:47)
Хубаво де, ама някой като прати ARP заявка и получи два отговора какво ще стане (наистина си нямам идея)? Т.е. в случая ще отговори и самата машина с такъв IP адрес и шлюза, който е настроен да работи в proxy arp режим.

Всъщност, човека не е обяснил много ясно каква му е топологията зад въпросната мрежова карта. Ако има хъб или суитч, на който са закачени клиентите от различните мрежи(т.е. са в един мрежов сегмент) тогава наистина няма как да не се виждат. Но ако въпросната мрежова карта е единствената им физическа връзка тогава може да стане по този начин.


Титла: 1 adsl -> 2 вътрешни мрежи
Публикувано от: laskov в Jun 05, 2006, 13:11
Цитат (melwin @ Юни 05 2006,14:09)
Но ако въпросната мрежова карта е единствената им физическа връзка тогава може да стане по този начин.

Двупортова мрежова платка ???


Титла: 1 adsl -> 2 вътрешни мрежи
Публикувано от: Hapkoc в Jun 05, 2006, 13:12
Да, вярно, обаче нещо не стоплям как ще стане два мрежови кабела да влизат в една платка. :)

Смисъл от платката на сървъра излиза един кабел и някъде по пътя трябва да се разделя, пък не се сещам как може да се раздели без switch или hub.


Титла: 1 adsl -> 2 вътрешни мрежи
Публикувано от: melwin в Jun 05, 2006, 13:24
Добре, не си представих картинката правилно :) .

[eth0]------[switch]-----[klient1]                
                    |
                    |
                    |
                [klient2]

В този случай наистина няма как да не се виждат, освен ако суитча не е "умен".


Титла: 1 adsl -> 2 вътрешни мрежи
Публикувано от: VladSun в Jun 05, 2006, 13:25
Цитат (Mitaka @ Юни 05 2006,11:49)
Накрая:
iptables -A INPUT -s 192.168.0.0/24 -d 192.168.3.0/29 -j REJECT

Това правило няма как да действа, защото се отнася за пакети предназначени за самия рутер ( т.е. с поле "dst ip" някое от IP-тата на рутера ).
Ако все пак трябва да се прави нещо с iptables, то е:
Примерен код

iptables -I FORWARD -i eth0 -o eth0 -j DROP

ако eth0 ти е вътрешната LAN карта.
Но, както вече споменаха по-горе, щом са на един физически сегмент няма да ти помогне много с хитреците :). За arp-proxy - мисля, че след като по routing таблица двете мрежи са зад един и същ интерфейс, то на arp заявки получени от страната на този интерфейс рутера НЯМА да отговаря. Ще отговаря само на заявки към другите интерфейси.
Вече ти казаха - вземи си ще една карта :)

@GigaVolt: може и без up параметър ;)





Титла: 1 adsl -> 2 вътрешни мрежи
Публикувано от: в Jun 05, 2006, 14:12
Със сигурност един managed switch с подръжка на 802.1q ще струва повече от една мрежова карта.


Титла: 1 adsl -> 2 вътрешни мрежи
Публикувано от: VladSun в Jun 05, 2006, 17:21
Най-лесно според ще ти е:
1) още една мрежова карта;

или

2) продават едни суичове, на които се слага една ИС дето се програмира предварително кой порт от суича кои други портове да "вижда" - правш два порта да "виждат" само uplinka на суича и си готов :) (заедно с iptables правилото, което ти написах по-горе). Суича струваше около 25 лв., мисля.


Титла: 1 adsl -> 2 вътрешни мрежи
Публикувано от: spritable в Jun 06, 2006, 11:17
Значи положението клони към слагане на 3-та мрежова карта на сървъра за тази 2-ра вътрешна мрежа.

Някой попита каква е топологията на мрежата.

            SERVER
ADSL ->   eth1
              eth0  -> switch -> към 192.268.0.x


Към този switch са вързани всички машини от вътрешната мрежа 192.168.0.х. Барабар с тази машини която искам да изолирам (192.168.3.х).

В крайна сметка след доста четене, най добрия вариянт е 3-та мрежова карта на сървъра. Връзката от 2-та вътрешна мрежа да не минава през switcha на първата, т.е. за сега да са свързани физически етх2 с машината от 3.х, пък по нататък ако ми трябва още машини в 2-та мрежа, ще сложа суйч.


Титла: 1 adsl -> 2 вътрешни мрежи
Публикувано от: spritable в Jun 07, 2006, 12:19
Обаче май се получи по начина който VladSun писа:

Примерен код

iptables -I FORWARD -i eth0 -o eth0 -j DROP


Значи сега мрежата 3.ххх няма пинг към 0.ххх, има само към рутера, което в моя случай е най-удачния вариянт.


Титла: 1 adsl -> 2 вътрешни мрежи
Публикувано от: в Jun 07, 2006, 12:46
Я пробвай на машините от 3-та мрежа да им сложиш мрежова маска 255.255.248.0 и пусни един пинг накъм някоя машинка от 0-вата мрежа да видиш какво ще стане :)