Начало Вход/Регистрация Помощ Tazi stranica s latinski bukwi
Области
 Новини
 Актуална тема
 Linux портали
 Какво е Линукс?
 Въпроси-отговори
 Форуми
   •Трудова борса
   •Конкурс
 Статии
 Дистрибуции
   •Поръчка на CD
 Made In BG
 Файлове
 Връзки
 Галерия
 Конференции
Настройки
 Външен вид
 Предложения
 Направи си сам
И още ...
 За нас
 Линукс за българи ЕООД
 Линк към нас
 Предложения

Подкрепяно от:
TelePoint - Място за хора със свободни идеи

SiteGround

initLab

Adsys Group

SAP Bulgaria

Въпроси отговори
Въпрос: Да се видят мрежи с разлини subnet mask
[Търси: ]

ВНИМАНИЕ: Използвайте форумите на сайта за дa зададете вашите въпроси.

Към началото |Добави въпрос |Отговори
 
Въпрос
От: dobi Дата: 06/18/2005
 Как може да се видят мрежи с разлини subnet mask например
255.255.255.0 и 255.255.255.252?



Отговор #1
От: plamen Дата: 06/19/2005
 route add -net 192.168.1.0 netmask 255.255.255.0 gw
<gateway>
 route add -net 192.168.1.4 netmask 255.255.255.252 gw
<gateway> (за 1вата подмрежа)


Отговор #2
От: Н. Антонов (nikola __@__ linux-bg[ точка ]org) Дата: 06/19/2005
Ключовата дума е bridge;)


Отговор #3
От: nqkoi Дата: 06/19/2005
Или можеби WINS?


Отговор #4
От: Abyser Дата: 06/20/2005
 Въпросът не е зададен съвсем ясно, затова ще размишлявам и
гадая каква е "опитната постановка".
 "Мрежи с различни subnet mask" - допускам, че subnet
 mask-ите са различни, но IP-тата са принципно от една клас C
 мрежа. Т.е. едната мрежа (А) е с IP-та (примерно!) от
 192.168.0.5 до 192.168.0.100, със subnet mask =
 255.255.255.0, а другата мрежа (Б) е от 4 на брой IP-та
 (това го определя subnet mask-та 255.255.255.252)- (пак
примерно!) от 192.168.0.252 до 192.168.0.255 включително.
 Като се вземе впредвид, че в мрежа (Б) първото IP е адрес на
 мрежата (не е желателно да се използва, не че практиката не
 показва, че не е невъзможно да се използва :) ), последното
 IP се води broadcast adres за тази мрежа и използването му е
 почти невъзможно (OK, по-нежелателно отколкото на IP-то на
 адреса на мрежата). Ако трябва да сме точни, във втората
 мрежа (Б) може да имаме 2 PC-та, които ще са с IP-та
 192.168.0.253 и 192.168.0.254 и със subnet mask =
 255.255.255.252. Не знам защо ти е нужна толкова малка
мрежа, но това си е твой проблем - няма проблеми :)

 "Да се видят двете мрежи"? За Windows-ка мрежа ли става дума
 или не? Или изобщо за ICMP/TCP/UDP свързаност? Допустимо ли
 е "виждането" (в смисъл трафика на пакетите) да става не
 директно, а през друго PC (непременно Linux router - прави
го перфектно! :))?
 Ще пробвам да отговоря в общия случай - независимо какво
 разбираш под "виждане" и с какви OS са PC-тата. Демек
свързаност на ниво ICMP/TCP/UDP.
 Освен всичко това ще приема, че PC-тата от двете мрежи са в
 LAN (ethernet свързани в общ switch или hub), защото иначе
въпросът и отговорът са съвсем други.
 Вземам 2 PC-та: 192.168.0.10 от (А) и 192.168.0.253 от (Б) и
 им слагам имена PC10 и PC253. Когато PC10 иска да
 "комуникира" с PC253, първо изчислява дали PC253 е от
 неговия ethernet сегмент. Т.е. PC10 си "поглежда"
 собствените IP и netmask, "поглежда" и IP-то на
destination-а (в случая PC253) и решава дали ще го търси:
1. локално по ethernet (ако destination-а е в същата мрежа)
2. чрез gateway-а си, който му е зададен.
 В нашия случай PC10 стига до извода, че PC253 е в неговия
 ethernet (switch/hub) и ще го "търси" по switch-овете
 (hub-овете), към които е включен. Изобщо PC10 с нетмаската
 на мрежа (А) очаква да намери всичките 255 адреса от
 192.168.0.1 до 192.168.0.255 по switch-овете (hub-овете),
 към които е включен. Т.е. няма да използва gateway-a, който
му е зададен (ако има такъв).
Как го търси?
 Пуска ARP request - пита по LAN-а: "кой е MAC адреса на LAN
 картата (включена в ethernet-а), чието IP е 192.168.0.253?".
 PC253 му отговаря, че това е той. Тогава PC10, използвайки
 своя MAC, изпраща някакви пакети към MAC-а на PC253. Изобщо
 комуникацията става на ниво hardware-ни адреси (или MAC
адреси).
 ОК, пакета стига до PC253, обработва се, и PC253 решава да
 отговори. Но не по MAC адрес, а към IP-то, от което идва
 пакета. PC253 вижда, че IP-то на PC10 не е в мрежата му (Б),
 т.е. отговорът ще се върне не директно по ethernet-а
 (switch/hub), а през gateway-а, който е зададен на PC253
 (ако има такъв, ако няма зададен gateway - няма да
отговори).

Отговорът на plamen е близо до истината с малко уточнения.
 Съвременните Linux дистрибуции (след kernel 2.2.x или 2.0.x
 - забравих вече :) ) нямат нужда от добавяне на статичен
 route за мрежи, които са присвоени на някоя LAN карта на
Linux-a с командата ifconfig.

Т.е. при PC10 с командата
(1) "ifconfig eth0 192.168.0.10 netmask 255.255.255.0"
автоматично сме задали (закон божи!) и 
(2) "route add -net 192.168.0.0 netmask 255.255.255.0 eth0"
и няма нужда да пишем (2)
Това е при PC10. 

При PC253 задаваме:
(1) "ifconfig eth0 192.168.0.253 netmask 255.255.255.252"
Т.е. тук след тази команда автоматично се е добавило:
"route add -net 192.168.0.252 netmask 255.255.255.252 eth0"

Ако искаме да виждаме и мрежа (А) трябва да добавим:
 (2) "route add -net 192.168.0.0 netmask 255.255.255.0 gw
<gateway> eth0"
 Този <gateway> трябва да е такова PC (почти задължително не
 Win, че там не е много ясно рутирането :) ), което да
 "вижда" мрежа (А) и мрежа (Б). През този <gateway> PC253 ще
 връща пакетите към PC10 от горната постановка. Ако това e PC
e с IP=192.168.0.15 тогава преди (2):
 (2) "route add -net 192.168.0.0 netmask 255.255.255.0 gw
192.168.0.15"
трябва да изпълним командата
(1') "route add -host 192.168.0.15 eth0"
 т.е. указваме на PC253, че 192.168.0.15 ще го търсим през
 eth0 (а не през някой default gw, който евентуално ще сме
 задали по-нататък), т.е. ще му вземем MAC-адреса през eth0 и
 ще го ползваме за gateway към мрежата
192.168.0.0/255.255.255.0

Отговорите на Н. Антонов и nqkoi са напълно безсмислени.
 Bridge решава други задачи - свързване на еднакви (като
 IP/netmask) мрежи през устройства, които не могат да
 прехвърлят MAC адреси - примерно 2 модема свързват офис1 и
 офис2, които имат IP-та от една мрежа. Рутерите не
 "прехвърлят" MAC адреси, за разлика от Bridges. За целта в
 офис1 Bridge1 се свързва в мрежата на офис1 с etherent-a
 (switc/hub), другия му край е свързан към модем1. Този
 модем1 през БТК :) се свързва към модем2 във офис2, модем2
 през Bridge2 се свързва към etherent-a (switc/hub) на офис2
 и така двата офиса се виждат все едно всички PC-та на двата
 офиса са в един switch/hub, т.е. всички PC-та от двата офиса
си виждат MAC адресите все едно са в един switch/hub.
Така че забрави при твоя случай за Bridge решение.
Bridge-a e друга бира :)

 За WINS-а - ами първо е частно решение за "виждане" на две
 мрежи - микро-софтско решение, освен това не върши работа -
 WINS  сервъра връща кое е IP-то на това PC, което е с име
 "\\winname". Е добре, ти ще получиш IP-то на PC-то от този
 WINS, но после пак ще се сблъскаш с рутинг проблемите, щото
 като browse-ваш от PC253 към PC10, тогавава това IP на PC10
 от (А) мрежата не ти е в локалната мрежа (Б), т.е. ще трябва
да минеш през gateway-а си.

Много писане, а решението е доста просто и кратко.

 Значи ако няма проблеми пакетите от мрежа (Б) към мрежа (А)
 да минават през някакъв рутер (192.168.0.15 от А) - работата
 е ясна. Но доколкото схващам, идеята е от мрежа (Б) да се
 стига до мрежа (А) без този трафик да минава и да се товари
някакво PC, което да се явява <gateway> за мрежа (Б).

 Тогава решението е просто: и в Linux, и в Windows има
 команда, чрез която на PC-тата в (Б) са добавя статичен ARP
routing към PC-тата, които са в (А).
Т.е. при PC253 като му се добави статичен ARP 
 "arp -s 192.168.0.10  00-aa-00-62-c6-09" //00-aa-00-62-c6-09
е MAC-а на LAN картата на PC10
 то той (PC253) ще "търси" PC10 в ethernet-а по
 MAC=00-aa-00-62-c6-09 и тези пакети няма да минават през
 някакъв gw, а директно - от MAC-а на PC253 към MAC-а на
PC10.

 Друг вариант е да ползваш sysctl функцията
 (net/ipv4/conf/all/proxy_arp) на някой Linux в LAN-а
(http://linux-ip.net/html/adv-proxy-arp....).
 Между другото трябва да се гордеем, че в тeзи network
 разработки (proxy_arp, arp_filter, clustering, rp_filter,
 bridges) често се среща името на българина Julian
Anastasov.


Отговор #5
От: dobi Дата: 06/20/2005
 Благодаря на всички за препоръките и помощта, която ми
оказвате! :) 
 И ОСОБЕННО НА Abyser - благодаря за изчепателния отговор :)
!
 Както казваш (извинявам се, че минах на ти ... ) въпроса е
поставен некоректно !
 Истината е такава - мрежа която позволява 2 IP- ta за сега е
 даденост т.е. не може да се промени subnet mask  така че да
 разрешава по-вече от 2.За  мрежата(ите) като цяло се
 използва едно РС с 2 карти едната е UTP, a другата BNC (нама
 хъб, няма рутер :( ). Та към тази BNC има вързан още един
 РС, a към UTP- to има изход към интернет. Идеята е да се
 ползва интернета и на другия РС. РС-то с 2те карти е Win ...
но каго чета препоръките ще трябва да минава на Linux :).
 Преди да задам въпроса пробвах разни хитринки и win.
програмки ... ама все едното от двете спираше да работи :(

 Ако съм ви насочил по- пълно към верният отговор :)
БЛАГОДАРЯ ПРЕДВАРИТЕЛНО !



Отговор #6
От: dobi Дата: 06/20/2005
Abyser, Идеята за route и apr ми хареса ще я пробвам 
благодаря още веднъж!
Чудя как ги забравих тези команди от промпта :(( !
ама то ВИН ... :-?



Отговор #7
От: Abyser Дата: 06/22/2005
Доколкото разбирам имаш: 
 1. PC1 - 2 мрежови карти, едната (NIC1)е с IP1 и gateway към
 провайдера и интернет, netmask 255.255.255.252. Другата
 (NIC2) е с IP2, което можеш да променяш, netmask =
255.255.255.0.
 2. PC2 - 1 мрежова карта (NIC3), свързана към NIC2, с IP3 от
 същата мрежа като IP2 на NIC2 и същата netmask =
255.255.255.0.
 Предполагам, че IP2 и IP3 са IP-та, които сам си си сложил и
 разликата им с IP1 е не само в netmask-ите, но и в самите
IP-та на мрежите.
На всичкото отгоре PC1 e Windows. :)
 Това, което ти е нужно, е да рутираш PC2 през PC1 към
 интернет. При преминаването на IP пакетите през рутери се
 "губят" ARP-овете - за това човек не може да види MAC адреса
 примерно на www.yahoo.com. Това , което писах надълго
 по-горе, е съвсем друга задача - как да се "виждат" без
 проблеми 2 мрежи, като едната е "подмножество" на другата и
 които имат хардуерна (ethernet, switch/hub или BNC)
свързаност и няма да ти свърши никаква работа.
 Пак ще пробвам да гадая малко, защото освен нетмаските не
казваш нищо за IP-тата, а те са по-важни от нетмаските.
 Провайдера ти е дал някакво "истинско" (може и да не е
 истинско) IP1, което (минавайки през провайдера) се рутира
към интернет и по този начин PC1 има интернет.
 1. Има вероятност провайдера да ти е дал клас "C" мрежа (255
 адреса, които провайдеръта ще рутира), като е "отцепил"
 малка мрежа с netmask 255.255.255.252 (4 на брой IP-та) за
 рутера PC1 и рутера, кйто е при него. Този вариант не ми се
 струва достоверен - провайдерите са доста "стиснати" по
 отношение на предоставне на цели клас "C" мрежи, а и ти да
 имаш само едно PC2 закачено във вътрешната си мрежа.... Не
 ми се вярва. Не че е невъзможно и не че тогава рутирането е
 по-сложно или невъзможно, но мисля, че случаят е друг и няма
смисъл да обяснявам как става.
 2. По-вероятния вариант е провайдера ти изобщо да не знае за
 твоето намерение да включиш PC2 към интернет, т.е. да не ти
 е давал никакви IP-та за вътрешната (в твоя случай BNC, не
че има значение де) мрежа.
 Ако за PC1 ползваш linux (или подобна ОС) - в този форум,
 както и из интернет като цяло, има страшно много написано,
 пусни някакъв search за NAT, IP Masquerading и ще намериш
 много инфо, става буквално с няколко реда, които трябва да
 допишеш в 1-2 файла. Има и разни тънкости - ако провайдера
 ти не желае да си споделяш интернета с PC2 може да реши да
 ти "прецаква" стойностите на TTL в пакетите - как ти да го
 "надхитриш", че обикновено с настройките за NAT човек си
 задава и някакви firewall правила, описва и някои
 по-интересни протоколи (напр. ftp)... За всичко това има
отговор и в този форум.
 Ако за PC1 ползваш ОС на Microsoft - не знам дали там се
 оправиха с рутирането и с NAT-а, може би в Win2003 (и в
 Win2000 дори) да може, не знам. Със сигурност от Win98
 нагоре имат някакво решение, дори съм срещал хора, на които
 им вършеше работа (малък офис). Потърси в yahoo/google за
 Windows Internet Connection Sharing, по принцип не е трудно,
щракаш тук-там по настройките и тръгва.
 Друго решение при Win е с използване на proxy software на
 PC1 - WinGate, WinProxy и други подобни. Новите версии на
WinGate позволяват и подкарването му като чист NAT.
 Най-чистият вариант е да направиш рутер с линукс - едно PC
 за 30-50 лв може да свърши работа, слагаш 2-те LAN карти там
 и PC1 и PC2 са свързани (с BNC) към вътрешната карта на
 рутера. Потърси из интернет за FreeSCO или подобни
 дистрибуции - някои решения дори не искат HDD, тръгват от
флопи.


Отговор #8
От: Иван Дата: 06/23/2005
Samba като Домеин Контролер



<< Как да инсталирам Linux? (5 ) | Lib (1 ) >>

 
© 2011-... Асоциация "Линукс за българи"
© 2007-2010 Линукс за българи ЕООД
© 1999-2006 Slavej Karadjov
Ако искате да препечатате или цитирате информация от този сайт прочетете първо това
Външния вид е направен от MOMCHE
Code Version: 1.0.8 H (Revision: 23-09-2011)
 
Изпълнението отне: 0 wallclock secs ( 0.07 usr + 0.01 sys = 0.08 CPU)