Ostatnia aktualizacja 09.12.2008

odsłon

 

Oto kilka opracowanych najczęstszych pytań pojawiających się na grupie pl.comp.sieci
Przy opracowywaniu pytań czerpałem tak z dawnego FAQ grupy, jak i z jej archiwum oraz pomocy grupowiczów.
Grupa pl.comp.sieci dawniej nazywała się pl.comp.networking, natomiast w wyniku głosowania została ona zmieniona na nowš.
Dokument ten będzie znajdował się pod adresem http://www.sierp.net/faq

Proszę o wyłapywanie wszystkich ewentualnych błędów, literówek itp. i zgłaszanie ich do mnie.
Chcę odpluskwić ten FAQ, dlatego zależy mi na zgłaszanych błędach, aby inni mogli z niego korzystać bez przeszkód.

Oficjalne FAQ grupy pl.comp.networking znajduje się pod adresem http://www.chwila.pl/nf/

Archiwum grupy znajduje się m.in. na http://groups.google.pl oraz archiwum http://pl.comp.sieci/

Przydatne linki:
http://www.hardwarebook.net
Wyszukiwarka Sam Spade (także whois) http://www.samspade.org
Wyszukiwarka sterowników http://www.drivershq.com
Nieoficjalne alt.pl.neostrada FAQ http://neofaq.prv.pl/
(nieoficjalne) Cisco FAQ PL http://lukasz.bromirski.net/projekty/cisco_faq_pl/cisco_faq_pl.html

 

Spis pytań:





2. Wiedza ogólna, pytania z serii - Co to jest? Jak?


Q: Co to jest repeater?

A: Repeater jest prostym, zazwyczaj 2-portowym urządzeniem służącym do zwiększania średnicy sieci.
Sygnał przychodzący jednym portem poddawany jest regeneracji (przywracaniu prostokątnego kształtu charakterystycznego dla sygnałów cyfrowych) oraz wzmocnieniu, a następnie wysyłany dalej drugim portem.

Repeater pracuje w warstwie 1 modelu ISO/OSI. Oznacza to, że jego działanie ogranicza się do obróbki elektrycznej sygnału przesyłanego w sieci. Urządzenie to nie interpretuje w żaden sposób przesyłanych sygnałów.

Urządzenia tego typu mogą równocześnie pełnić rolę konwerterów.

Konwerter jest to urządzenie pracujące w warstwie 1 modelu OSI, służące do łączenia ze sobą różnych, niekompatybilnych ze sobą mediów transmisyjnych np. skrętki i światłowodu lub skrętki i kabla koncentrycznego.
Należy zaznaczyć, że konwerter może łączyć ze sobą tylko urządzenia pracujące w tym samym standardzie sieciowym, kompatybilne ze sobą na poziomie warstwy 2 np. urządzenia Ethernet.

Repeatery mogą pracować tylko w trybie halfduplex, konwertery jako takie nie mają takiego ograniczenia.


Q: Co to jest hub (koncentrator)?

A: Hub (koncentrator) mówiąc w uproszczeniu jest wieloportowym repeaterem. Spełnia on wszystkie funkcje repeatera oraz dodatkowo rozgałęzia sieć. Sygnał przychodzący jest regenerowany i wzmacniany, a następnie wysyłany na wszystkie porty urządzenia.

Istnieje wiele rodzajów koncentratorów różniących się miedzy sobą wielkością i sposobem konstrukcji.
Poczynając od najprostszych, 4-portowych i niezarządzalnych, przez kilkunastoportowe urządzenia z możliwością łączenia w stosy, a kończąc na zawierających nawet do 120 portów konstrukcjach modułowych z możliwością zarządzania.


Q: Co to jest Bridge (Most)? Co to jest Switch (Przełącznik)? Czym jest Switching Hub?

A: Według IEEE Bridge i Switch są to dwie nazwy dla tego samego urządzenia. Przyjęło się jednak, że jako Bridge określa się urządzenie 2-portowe, a nazwę Switch stosuję się do urządzeń o większej liczbie portów.

Bridge jest "inteligentniejszą" wersją repeatera pracującą w warstwie 2 modelu ISO/OSI. Oznacza to, że potrafi analizować ramki w celu odczytania adresów docelowego i źródłowego. Bridge przechowuje w pamięci MAC adresy przyłączonych do niego kart sieciowych, dzięki czemu ramki kierowane są tylko do tego portu, do którego podłączony jest ich adresat. Ma to dwie podstawowe zalety:

Te dwie cechy przyczyniają się do wzrostu wydajności sieci opartej na przełączniku.
Switche podobnie jak huby dostępne są w wielu wersjach różniących się liczbą portów, możliwościami rozbudowy i zarządzania.

Czym jest Switching Hub? Niektórzy producenci nazywają w ten sposób swoje małe, niezarządzalne switche.


Q: Co to jest stackowanie hubów/switchy?

A: Niektóre huby i switche (oznaczone jako "stacking" lub "stackable") pozwalają na łączenie ze sobą ich magistrali wewnętrznych. Stosuje się do tego specjalne kable (specyficzne dla każdego producenta), a często także zewnętrzne moduły (jeśli chcemy połączyć większą liczbę urządzeń). Tutaj omówiona zostanie idea łączenia w "stosy", natomiast po dokładne informacje jak zestakować ze sobą konkretne urządzenia odsyłamy do instrukcji.

Połączenie hubów przez ich magistralę wewnętrzną powoduje, że zachowują się one jak jedno urządzenie. Stakując (ustawiając w "stos") dwa huby 24 portowe otrzymamy hub 48 portowy. Dodając do tego kolejny hub 24 otrzymamy urządzenie 72 portowe.

Łączenie w stosy ma kilka zalet:

W przypadku połączonych kaskadowo hubów jedyną stratą wydajności jest sumowanie opóźnień na każdym z urządzeń (gdyż cała kaskada współdzieli w zależności od rozwiązania 10 lub 100 Mbps).
W przypadku switchy, gdzie każdy port ma zagwarantowane dla siebie pełne 100 Mbps to właśnie połączenia między switchami stają się wąskim gardłem. Wyobraźmy sobie, że mamy dwa switche (A i B). Switche połączone są ze sobą portami o przepustowości 100 Mbps, a do każdego ze switchy podpiętych jest po 20 komputerów (każdy z kartą 100 Mbps). Jeśli teraz każdy z komputerów podpiętych do switcha A będzie chciało wysłać dane do swojego odpowiednika podpiętego do switcha B, to teoretycznie zapotrzebowanie na pasmo pomiędzy switchami może wynieść 2 Gbps w jedną stronę (20 komputerów x 100 Mbps). Transmisja ta szybko zostanie stłumiona na naszym 100 Mbps połączeniu pomiędzy switchami.
Zestakowanie switchy pozwala (przynajmniej częściowo) usunąć to wąskie gardło. Ktoś może teraz spytać dlaczego tylko częściowo? Dlatego, że w przypadku switchy magistrala do stakowania nie zawsze ma przepustowość wystarczającą do przepuszczenia przez nią ruchu z wszystkich portów. Jednak zawsze jest to wartość co najmniej kilkakrotnie większa niż przepustowość pojedynczego portu.


Q: Co to jest Router (Gateway, Bramka)?

A: Router pracuje w warstwie 3 modelu ISO/OSI, lub jak kto woli na poziomie protokołów typu IP, IPX, AppleTalk lub innych podobnych. Praca w warstwie 3 umożliwia wykorzystanie routera do łączenia ze sobą sieci wykonanych w różnych, niekompatybilnych ze sobą technologiach np. sieci Ethernet i sieci Token-Ring. Technologie te korzystają z różnych formatów ramek i nie da się ich połączyć przy pomocy prostszych urządzeń np. switchy. Router analizując przychodzące ramki "obiera" je z nagłówków aby dostać się do pakietów IP, następnie na podstawie adresów IP podejmuje decyzję o tym, dokąd powinien skierować ten pakiet i wysyła go przez odpowiedni interfejs (dodając odpowiednie dla tego interfejsu nagłówki ramki).
Najczęstszym zastosowaniem routerów jest połączenie sieci lokalnej z siecią rozległą (np. Internet) lub np. dwóch sieci rozległych.


Q: Co lepiej kupić - hub czy switch? Czym się różnią?

A: Odpowiedź na to pytanie nie jest jednoznaczna.

Jeśli sieć służy nam tylko do rozdzielenia połączenia internetowego na domowe komputery, możemy spokojnie kupić huba 10 Mbps.

Jeśli chcemy mieć sieć 100 Mbps to polecamy zakup Switcha - powody są dwa:

Czym się różni hub od switcha?
Hub odbiera sygnał z jednego portu i wysyła go na wszystkie pozostałe. W czasie kiedy jedna stacja nadaje pozostałe muszą słuchać.
Switch dane odebrane z jednego portu wysyła tylko do portu, do którego jest wpięty adresat tych danych. Poza tym switch pozwala na równoczesną komunikację w dwóch kierunkach - pracę w fullduplexie.
Switch ma jeszcze jedną przewagę nad hubem - uniemożliwia lub skutecznie utrudnia podsłuchiwanie transmisji innych komputerów (a co za tym idzie skutecznie utrudnia analizę samej sieci i problemów w niej występujących).


Q: Co to jest model ISO/OSI?

A: Model ISO/OSI (Open System Interconnection) jest teoretycznym modelem stworzonym przez International Organization for Standardization (ISO). Opisuje on przepływ informacji od aplikacji pracującej na jednym komputerze - przez sieć - do aplikacji pracującej na drugim komputerze. Model ten składa się z siedmiu warstw:

7. Warstwa Aplikacji
6. Warstwa Prezentacji Warstwy wyższe (Aplikacji)
5. Warstwa Sesji

4. Warstwa Transportowa
3. Warstwa Sieci Warstwy niższe (Transportowe)
2. Warstwa Łącza danych
1. Warstwa Fizyczna

Jest to model teoretyczny. W wielu rozwiązaniach praktycznych model ten zaimplementowany jest tylko częściowo i/lub z modyfikacjami.


Model OSI w wielu opracowaniach jest przedstawiony w dość mętny sposób i może budzić pewne wątpliwość co do sensu jego stosowania. Postaramy się go tutaj skrótowo omówić w dość przystępny sposób, gdyż znajomość modelu OSI znacznie ułatwia pracę z sieciami oraz rozwiązywanie problemów.

Wyższe warstwy modelu OSI są zaimplementowane tylko w oprogramowaniu i są bliższe użytkownika.
Niższe warstwy modelu OSI są implementowane zarówno w sprzęcie jak i w oprogramowaniu. Odpowiadają one za dostarczenie informacji od nadawcy do adresata.
Być może brzmi to jeszcze trochę abstrakcyjnie, jednak stanie się to bardziej zrozumiałe gdy dojdziemy do opisu funkcji każdej z warstw.

Z naszego punktu widzenia najbardziej interesujące są warstwy od 1 do 4, większość problemów z jakimi może spotkać się administrator związana jest właśnie z tymi warstwami.

W modelu OSI każda warstwa potrafi komunikować się (wymieniać informację) z sąsiadującymi z nią warstwami. Np. warstwa 2 potrafi odbierać i przekazywać dane z warstw 1 i 3.

Informacja z Aplikacji w komputerze A "schodzi" po kolei po warstwach aż do poziomu sprzętu, wysyłana jest po medium transmisyjnym (kablu miedzianym, światłowodzie, falą radiową, etc.). W komputerze B informacja odbierana jest z medium transmisyjnego, następnie "wchodzi" coraz wyżej po warstwach sieci, aż dotrze do warstwy aplikacji.

- "Warstwa 8"- Program - warstwa ta nie istnieje w modelu ISO/OSI. Została tu dodana przez osobnika znanego jako Maxx (errata by Sierp ;-), aby pokazać co znajduje się nad najwyższą (siódmą) warstwą modelu OSI ;). Program jest tym, z czym komunikuje się użytkownik. Może to być np. klient pocztowy, czytnik grup dyskusyjnych czy przeglądarka internetowa. Jeśli użytkownik zechce wysłać jakieś dane przez sieć - powiedzmy e-mail - to jego program pocztowy przekaże dane niżej, a więc do warstwy Aplikacji.

- Warstwa 7 - Aplikacji - Jest to warstwa modelu OSI znajdująca się najbliżej użytkownika, jednak nie ma on z nią bezpośredniego kontaktu (patrz wyżej). Zapewnia ona aplikacji (czy raczej programowi) mechanizmy do komunikowania się z siecią.

- Warstwa 6 - Warstwa prezentacji - Zadaniem tej warstwy jest zapewnienie, by dane wysłane z komputera A dało się odczytać na komputerze B. Do warstwy 6 zalicza się wiele popularnych formatów kodowania, zapisywania i kompresji danych. Przykładami takich formatów może być tekst w formacie ASCII, skompresowane pliki typu ZIP, czy filmy AVI.

- Warstwa 5 - Warstwa sesji - Odpowiada ona za nawiązywanie, zarządzanie i kończenie sesji komunikacyjnych. Przykładem sesji mogą być połączenia z serwerem FTP. Komputer A łączy się z serwerem FTP na porcie 21. Serwer odpowiada, zostaje nawiązana sesja z komputerem A i przeniesiona na jakiś inny port (dzięki temu port 21 serwera pozostanie wolny i inne komputery również będą mogły nawiązywać z nim sesje). W tym czasie komputer B również stara się nawiązać komunikację z serwerem FTP. Łączy się z jego portem 21, zostaje ustanowiona nowa sesja i przeniesiona na inny port. W tej chwili mamy już dwie sesje podłączone do serwera FTP:
sesja 1 - komputer A
sesja 2 - komputer B
Oba komputery pobierają różne pliki (w różnych sesjach). Warstwa 5 odpowiada za to, by nie było pomyłek związanych z wysłaniem nie tej informacji, która była zamówiona. Pilnuje, by pliki dla komputera A zostały wysłane sesją 1, a pliki do komputera B sesją 2.

- Warstwa 4 - Transportowa - Warstwa ta odpowiada za podzielenie informacji przesyłanych z warstwy sesji na małe segmenty danych nadające się do wysłania przez sieć. Warstwa transportu odpowiada również za to, by dane transmitowane były bez błędów, a także za tzw. kontrolę przepływu. Kontrola przepływu jest mechanizmem, dzięki któremu wysyła się tylko tyle danych na raz, ile komputer jest w stanie odebrać. Nie ma sensu, żeby nieobciążony serwer z szybkim łączem do sieci szkieletowej wysyłał z pełną prędkością dane dla użytkownika modemu, gdyż ten ostatni i tak nie będzie w stanie ich tak szybko odebrać.

- Warstwa 3 - Sieci - Warstwa ta określa sposób adresowania sieci (adresowania logicznego np. IP). W warstwie tej można określić logiczną strukturę sieci. Na jej podstawie routery mogą określać dokąd należy wysyłać określone pakiety.

- Warstwa 2 - Łącza danych - Odpowiada za przesyłanie danych przez fizyczne łącze sieciowe. W zależności od implementacji może odpowiadać m.in. za adresy sprzętowe (np. MAC adresy), topologię sieci (to w jaki sposób urządzenia w sieci są ze sobą fizycznie połączone), sekwencjonowanie ramek, kontrolę błędów i kontrolę przepływu.

- Warstwa 1 - Fizyczna - określa mechaniczne, elektryczne i funkcjonalne parametry potrzebne do ustanowienia, utrzymania i zerwania fizycznego połączenia pomiędzy urządzeniami. Określa parametry takie jak poziomy napięć, częstotliwości przesyłania sygnału, prędkości przesyłania danych w bitach, maksymalne odległości pomiędzy urządzeniami oraz rodzaje stosowanych złącz. Należy zaznaczyć, że okablowanie nie jest określane przez warstwę 1 i znajduje się jeszcze "niżej".


Uważne osoby być może zwróciły uwagę na to, że funkcje niektórych warstw wydają się dublować. Są to np. kontrola błędów i kontrola przepływu w warstwach 2 i 4. W zależności od implementacji może być tak, że problemy w transmisji najpierw próbuje rozwiązać na poziomie sprzętowym warstwa niższa. Jeśli nie uda jej się pomyślnie przesłać ramki w określonej liczbie prób, to ją odrzuca. Warstwa wyższa (zaimplementowana bardziej w oprogramowaniu) wykrywa to i próbuje wysłać te dane jeszcze raz "w dół" modelu OSI.
W innych implementacjach warstwa niższa tylko raportuje wystąpienie błędu, natomiast decyzję co z tym zrobić podejmuje w całości oprogramowanie.

Więcej informacji na ten temat można poczytać tutaj:
http://www.cisco.com/univercd/cc/td/doc/cisintwk/ito_doc/introint.htm#xtocid5


Q: Czym jest (a)synchroniczność?

A:
1. Synchroniczność polega na przesyłaniu ciągłym danych z jednego miejsca do drugiego. W przypadku braku danych do wysłania nadal transmisja się odbywa, ale zamiast danych przesyłane są specjalne znaki sterujące oznaczające brak danych. Zazwyczaj równolegle z linią danych przesyłany jest również sygnał zegara (synchronizujący dane).
2. Asynchroniczność - dane są przesyłane tylko wtedy, kiedy mamy coś do przesłania. Niesie to ze sobą dodatkowy problem, polegający na sygnalizacji drugiej stronie, kiedy zaczynamy nadawać i kiedy kończymy. Często również takiej transmisji nie towarzyszy sygnał zegara, co powoduje potrzebę odtwarzania go po stronie odbiorczej. Praktycznie wynika z tego, że do właściwych danych dodawane są dodatkowe bity oznaczające start, stop oraz czasem synchronizujące. Czasem nawet same dane są kodowane w specjalny sposób, aby można było łatwiej odzyskać sygnał zegara z odbieranych danych.
3. Podsumowanie:
- przy tej samej przepływności łącza w (kilo)bitach/s więcej 'użytecznych' danych przepływa przez łącze synchroniczne.
- przy popularnym, asynchronicznym rs-ie w pecetach dodawane są zazwyczaj dwa dodatkowe bity (startu i stopu) z czego wynika, że na 10 przesłanych bitów mamy tylko jeden bajt danych (8 bitow informacji).


Q: Czym jest (a)symetryczność?

A:
1. Symetryczność - oznacza tylko tyle, że transfer osiągany w dół (download) jak i w górę (upload) linku jest taki sam
2. Asymetryczność - transfer w dół jest inny niż w górę. W typowym ADSL-u zazwyczaj mamy większy transfer w dół niż w górę
3. Nie należy mylić tego z (a)synchronicznością lub half/full duplexem!


Q: To jak w końcu jest z tą (a)symetrycznością/(a)synchronicznością/half i full duplexem w zwykłych łączach?

A: Najczęściej spotykane łącza i ich właściwości:
- RS232 w pececie: asynchroniczny, symetryczny, fullduplex
- SDI: asynchroniczne(od strony pc), symetryczne, fullduplex
- Neostrada, iDSL: asymetryczne, fullduplex
- popularny Polpak FR: synchroniczny, symetryczny, fullduplex
- karta sieciowa podłączona do huba: synchroniczna, symetryczna, halfduplex
- sieciówka podłączona do switcha: synchroniczna, symetryczna, fullduplex


Q: Czym jest firewall? Jakie jest jego zadanie? Jaki firewall wybrać?

A: Firewall to ogólnie rzecz biorąc program (nie będę się wdawał w dywagacje czy firewall sprzętowy to też w pewnej części program i czy dobrym określeniem jest firewall sprzętowy itp.) którego zadaniem jest kontrolowanie (np. blokowanie) połączeń przychodzących i wychodzących.
Zazwyczaj chodzi nam o blokowanie danego portu (np. aby tylko z danego IP można było połączyć się z Internetu z daną usługą na naszym komputerze) lub np. o blokowanie odpowiedzi na ping'a (blokujemy wtedy wyjście icmp-echo-reply lub wejście icmp-echo-request).

Dobrą strategią ochrony sieci/hosta jest blokowanie wszystkiego (REJECT) a wpuszczanie (ACCEPT) tylko tego czego oczekujemy.
Aby zrozumieć podstawy działania firewalla musimy najpierw zrozumieć, że różne usługi korzystają z różnych portów do komunikacji - standardowe usługi są przypisane do portów przez instytucję znaną pod nazwą IANA. Tam się dowiemy że przykładowo ssh korzysta standardowo z portu 22 protokołu tcp, telnet korzysta z 23 tcp, a dns (domain) z 53 tcp/udp. Skrócony opis znajdziesz w pliku services w swoim systemie.
Pamiętaj też że porty klienckie (te z których wychodzą zapytania od klientów) zawierają się miedzy 1024 a 65535 portem (zależnie od systemu).

Musisz jeszcze zrozumieć sposób komunikacji danej usługi. Przedstawię kilka przykładów i drogę pakietów:

1) Masz serwer www i chcesz zapewnić dostęp do serwera z Internetu. Sprawdziłeś w pliku services/na stronie IANA, że www (protokół http) korzysta z portu 80 tcp. Kiedy klient wchodzi na serwer chcąc pobrać stronę, wysyła pakiet z portu klienckiego (1024:65535) na port 80 serwera. Ale to nie wszystko :-) Serwer odpowiada z portu 80 na tenże port kliencki.
A więc aby zapewnić transmisję z serwerem www, musisz
- wpuścić (INPUT) ruch z portu 1024:65535 tcp na port 80 tcp
- wypuścić (OUTPUT) ruch z portu 80 tcp na port 1024:65535 tcp

2) Masz hosta z zainstalowanym firewallem i chcesz aby można było na nim odbierać pocztę. Protokół pop3 to 110 tcp. Chcąc odebrać pocztę, ten host wyśle najpierw pakiet z portu klienckiego (1024:65535) na port 110 serwera pocztowego, a potem z tego portu (110) dostanie na port kliencki odpowiedź. Należy
- wypuścić (OUTPUT) ruch z portu 1024:65535 tcp na port 110 tcp
- wpuścić (INPUT) ruch z portu 110 tcp na port 1024:65535. Niektóre firewalle (np. iptables) pozwalają na szczegółowe określenie jakie pakiety mają być wpuszczane/wypuszczane, i tam możesz m.in. określić że pakiety chcące rozpocząć transmisję będą odrzucane. Tutaj znajdzie to zastosowanie - ruch wchodzący z portu 110 może być tylko ruchem nie rozpoczynającym transmisję (bo jest to odpowiedź serwera na nasze zapytanie).

3) Masz hosta za serwerem NATującym/sprzętowym firewallem i chcesz skonfigurować firewalla na tym serwerze tak aby przepuszczał (np. maskował) wyjście dla połączenia z newsami. Ma on dwa interfejsy i jest to już troszkę wyższa szkoła jazdy :-) Po pierwsze ustalamy, że nntp pracuje na porcie 119 tcp. Tak więc na serwerze musimy wpuścić ruch od hosta na port 119 z portu klienckiego, oraz wypuścić odpowiedzi do niego (z portu 119 na port kliencki). Oraz musisz umożliwić serwerowi komunikację ze światem na port 119. W tym celu musisz umożliwić wyjście pakietom z portu klienckiego serwera na port 119 tcp oraz wejście odpowiedziom na te pakiety. Ustawiamy więc:
i) na interfejsie lokalnym
- wpuszczasz (INPUT) ruch z portu 1024:65535 tcp hosta na port 119 tcp serwera
- wypuszczasz (OUTPUT) ruch z portu 119 tcp serwera na port 1024:65535 tcp hosta
ii) na interfejsie zewnętrznym
- wypuszczasz (OUTPUT) ruch z portu 1024:65535 tcp na port 119 tcp
- wpuszczasz (INPUT) ruch z portu 119 tcp na port 1024:65535 tcp

Mam nadzieję że powyższe przykłady pomogą ci w zrozumieniu podstaw filtrowania pakietów i ułatwią układanie reguł filtrowania w każdym firewallu. A jakiego ogniomurka wybrać?
Pod Linuksa 2.0.x - ipfwadm, pod Linuksa 2.2.x - ipchains, pod Linuksa 2.4.x - iptables
Pod FreeBSD - ipfw (IP Firewall), ipf (IP Filter)
(dokumentacja po polsku do powyższych na stronie Łukasza Bromirskiego)
Pod OpenBSD mamy pf (Packet Filter)
Pod Windowsa - Kerio Personal Firewall (darmowy przez okres 30 dni, potem działa w ograniczonym zakresie), Outpost Firewall (jest dostępna wersja darmowa Outpost Firewall Free na stronie producenta), ZoneAlarm (darmowy dla zastosowań niekomercyjnych i domowych), McAfee Personal Firewall, Norton Personal Firewall, Sygate Personal Firewall (darmowy dla domowego użytku).
Tam gdzie nic nie pisałem program jest komercyjny. Często też są całkowicie komercyjne odmiany darmowego softu (np. ZoneAlarm Pro).
Myślę że nie ma sensu pytać na grupie który jest najlepszy... każdy ma swój "typ", napisano już o nich wiele, na pewno sporo dowiesz się z archiwum google'a.
Jednak jeżeli naprawdę czujesz potrzebę zapytania - pytaj :-) Tylko pliss, podaj system pod który poszukujesz owego firewall'a.

Na koniec jeszcze warto wspomnieć o programach które pracują na warstwach wyższych niż 3.
Przykładem takiego programu jest choćby squid, który może służyć jako transparent-proxy. Można za jego pomocą blokować choćby program KaZaA :-) O zasadzie działania serwera proxy troszkę tutaj.


Q: Jak przeliczać maski? Jak je dobierać? Jak obliczyć broadcast?

A: Maski, numery IP są przetwarzane przez komputer jako liczby binarne. Najlepiej odpalić w Windowsie (albo gdzie tam jesteś ;-) kalkulator, włączyć widok naukowy/zaawansowany i sprawdzać co piszę :-)

Maska 255.255.255.0 to maska 24-ro bitowa - składa się z 24 jedynek i 8 zer (maska i numer IP zawsze składa się z 32 cyfr binarnych, mowa oczywiście o IPv4 - przy czym maska zawsze składa się najpierw z ciągu (1 lub więcej) jedynek, a potem z ciągu zer (0 lub więcej) ).

11000000.10101000.00000001.00000110 = 192.168.1.6 - IP
11111111.11111111.11111111.00000000 = 255.255.255.0 - maska

Jak teraz obliczyć broadcast? Wykonujemy działanie logiczne IP OR (NOT maska), czyli inaczej mówiąc bierzemy "zamaskowaną" część numeru IP (tam gdzie występują jedynki) a resztę wypełniamy jedynkami i otrzymujemy:

11000000.10101000.00000001.11111111 = 192.168.1.255

Dla przykładowego numeru IP i maski

11010000.11010000.11010000.11010000 = 208.208.208.208 - IP
11111111.11111111.11111100.00000000 = 255.255.252.000 - maska

mamy broadcast

11010000.11010000.11010011.11111111 = 208.208.211.255

Oczywiście maska typu 11111111.11111111.11001111.00000000 jest nieprawidłowa (brak ciągłości jedynek i zer).
Oznaczenie typu x.y.z.p/24 oznacza że maska dla tego numeru IP jest 24-o bitowa (255.255.255.0). Czasem określa się to jako x.y.z.p/255.255.255.0

W liczeniu mogą pomóc dwa linki oraz jeden program

.

Q: Jak powinienem skonfigurować protokół tcp/ip w sieci LAN? Jakie dać IPki, maski, bramki...

A: Jeżeli chodzi o numery IP z puli prywatnej (a takich powinno się używać jeżeli nie dostaliśmy od providera IPków z puli publicznej) to mamy do wyboru trzy klasy:

Klasa A: 10.0.0.0 - 10.255.255.255 maska 255.0.0.0
Klasa B: 172.16.0.0 - 172.31.255.255 maska 255.255.0.0 (mamy tu dostępnych 16 podsieci 172.16.0.0->172.31.0.0)
Klasa C: 192.168.0.0 - 192.168.255.255 maska 255.255.255.0 (mamy tu dostępnych 256 podsieci 192.168.0.0->192.168.255.0)
O przydziale adresów prywatnych można poczytać w RFC1918.

Po pierwsze - numery IP w sieci LAN powinny być unikalne. Jaka jest najlepsza dla ciebie klasa? W zasadzie dowolna, bo to nie ma większego znaczenia, ograniczenia wynikają tylko z liczby dostępnych w sieci hostów (dla maski 255.255.255.0 będą to 254 hosty, dla 255.255.0.0 65534 hosty, a dla 255.0.0.0 jest to 16777214 hostów).
Oczywiście maski wymienione wyżej nie są obligatoryjne, można dowolnie (ale zgodnie z logiką ;-) dzielić sieć na podsieci i otrzymywać inne przedziały numerów IP i inne maski. Wyjaśnienie o co chodzi w maskach i co to jest maska X bitowa znajdziesz tutaj.
Bramkę (gateway) wpisujemy na klientach którzy mają mieć dostęp do Internetu bądź innych sieci - numer IP bramki musi być z tej samej sieci w której jest host.

Jeszcze tylko krótkie wyjaśnienie - adres broadcast jest adresem rozgłoszeniowym, co oznacza że wszystko wysłane na ten adres (numer IP) zostanie odebrane przez wszystkie komputery w podsieci.

Więcej informacji znajdziesz na stronie www.jtz.org.pl


Q: Pliiiiis, powiedz jak podzielić sieć na podsieci...

A: Przede wszystkim przeczytaj pytanie (i przede wszystkim odpowiedż ;-) powyżej dotyczące masek i broadcastów - ta wiedza będzie potrzebna.

Na poczatek podstawowe pytanie - po co w ogóle dzielić sieci IP na podsieci?
Pięknie by było, gdyby wszystkie serwery i komputery na świecie mogły być w jednej wielkiej sieci IP i nie mielibyśmy tego całego problemu z routowaniem. Niestety nie jest tak pięknie.. po pierwsze jest ograniczona ilość adresów IP (zwłaszcza w IPv4). Po drugie jedna sieć nie mogłaby działać przy tak dużej ilości hostów (choćby z powodu broadcastów, które są jednym z mechanizmów TCP/IP - wyobraźcie sobie jak na taki broadcast odpowiadają miliardy końcowek, i każdy taki pakiet musi być przeanalizowany na jakimśtam etapie przez każdego klienta...) Po trzecie.. można by długo wymieniać :-)
Do podziału zmusza nas życie lub wygoda. Chcąc odseparować od siebie routerem/firewallem dwie części sieci, podział na podsieci IP jest naturalnym rozwiązaniem - dzięki temu każdy pakiet przejdzie przez router/firewall (może być przefiltrowany) i jest możliwe zdefiniowanie tras routingu do innej części sieci.
Jeżeli chcemy z adresacji wydzielić strefę DMZ, sieć serwerową czy inną, a mamy z góry zdefiniowany zakres adresów IP, jakich możemy użyć (np. adresy przyznane przez providera) - podział jest czasem najlepszym wyjściem.

Ale do rzeczy. Dla przykładu wezmę sieć 192.168.0.0/24 (czyli adresy od 192.168.0.0 do 192.168.0.255), którą już zawczasu podzieliłem na 4 podsieci. Zawsze dzieląc sieć, dzielisz ją na pół (po czym możesz dalej dzielić oczywiście). Zawsze liczba IPków w takiej sieci jest potęgą liczby 2 (jeżeli wychodzi ci coś innego - sprawdź obliczenia). Oto jak wygląda podział:

Adres podsieci      Ilość hostów   Maska            Broadcast
192.168.0.0         64             255.255.255.192  192.168.0.63
192.168.0.64        32             255.255.255.224  192.168.0.95
192.168.0.96        32             255.255.255.224  192.168.0.127
192.168.0.128       128            255.255.255.128  192.168.0.255

Oczywiście na wstępie (dla tego przykładu) wyszedłem z sieci 192.168.0.0/24. Po prostu podzieliłem tą sieć na dwie podsieci po 128 hostów (maska /25, czyli 255.255.255.128), następnie pierwszą z nich podzieliłem na dwie podsieci po 64 hosty (maska /26, czyli 255.255.255.192), a na koniec drugą z 64-o IPkowych podsieci podzieliłem jeszcze na pół (maska /27, czyli 255.255.255.224).
Mam nadzieję, że na dalszych przykładach zrozumiesz szczegóły tej operacji, będę pokazywał dalszy podział w kolejnych krokach
No więc podzielmy teraz drugą podsieć 32 IPkową na dwie podsieci 16-o IPkowe. Otrzymamy

Adres podsieci      Ilość hostów   Maska            Broadcast
192.168.0.0         64             255.255.255.192  192.168.0.63
192.168.0.64        32             255.255.255.224  192.168.0.95
192.168.0.96        16             255.255.255.240  192.168.0.111
192.168.0.112       16             255.255.255.240  192.168.0.127
192.168.0.128       128            255.255.255.128  192.168.0.255

Jak widać do maski doszedł jeden bit (/28, czyli 255.255.255.240), broadcast oblicza się prosto, gdyż jest to adres podsieci + liczba hostów - 1. Dla większych podsieci gdzie trzeba wziąć wiekszą liczbę oktetów (np. mask /16) jest analogicznie.
Teraz jeszcze podzielę pierwszą podsieć 16-o IPkową na dwie 8-o. Dostanę:

Adres podsieci      Ilość hostów   Maska            Broadcast
192.168.0.0         64             255.255.255.192  192.168.0.63
192.168.0.64        32             255.255.255.224  192.168.0.95
192.168.0.96        8              255.255.255.248  192.168.0.103
192.168.0.104       8              255.255.255.248  192.168.0.111
192.168.0.112       16             255.255.255.240  192.168.0.127
192.168.0.128       128            255.255.255.128  192.168.0.255

Zauważ, że zawsze maska ma postać taką, że od 256 odejmujesz liczbę hostów (oczywiście 256 przy dzielonej sieci klasy C - choć określeń klas nie powinno się już stosować).
To oczywiście najprostsze przypadki, formalne obliczenia masz we wspomnianym już pytaniu o maski.

Mam nadzieję, że troszkę przybliżyłem problem podziału sieci na podsieci, w razie sugestii dotyczących tego pytania - mailuj :-)


Q: Chcę zarejestrować domenę .pl (lub inną z wysokiego poziomu) - jak się za to zabrać?

A: Po pierwsze - przejrzyj FAQ na stronie www.dns.pl

W skrócie - potrzebujesz dwóch serwerów nazw - DNS (Domain Name Server) - skonfigurowanych do obsługi swojej nowej domeny. Te dwa serwery nazywamy primary i secondary, czyli głównym i zapasowym (możesz je załatwić we własnym zakresie lub zapewni ci to bezpłatnie twój rejestrator, co jest aktualnie standardem. Istnieją też darmowe serwery pracujące jako primary i/lub secondary). Jeżeli decydujesz się u siebie postawić serwer primary, a nie masz gdzie umieścić secondary - wyślij post z prośbą o utrzymanie serwera secondary DNS na grupę pl.comp.sieci - ktoś na pewno ci pomoże.
Następnie musisz wybrać rejestratora, u którego domenę zakupisz. Czasy, kiedy byliśmy skazani na łaskę (i ceny) NASKu dawno minęły (i dobrze).
Pozostaje już tylko upewnić się, że domena którą chcesz zakupić jest wolna (nie ma właściciela) w bazie whois, oraz uiścić stosowną opłatę za rejestrację domeny - informacje na ten temat spokojnie znajdziesz u rejestratora na jego stronie www.
Jeżeli chcesz skonfigurować serwer DNS pod UNIXem/LINUXem, to pomocnym może być howto ze strony www.jtz.org.pl, oraz program BIND lub djbdns (dwa najpopularniejsze), jeżeli pod Windowsem to przykładowym programem do obsługi serwera nazw może być np. SimpleDNS Plus.

Jeżeli jesteś zainteresowany inną domeną najwyższego poziomu popatrz na spis firm rejestrujących domeny krajowe.


Q: Co to jest DNS? Czym jest revDNS? Jak zmienić revDNS? Jak sprawdzić jaki mam revDNS?

A: Domain Name System - System nazw domen. Jest to ogromna baza danych (ideowo), o lokalizacji rozproszonej po całym świecie - przechowuje nazwy komputerów pracujących w sieci Internet, grupuje je w domeny. DNS przyporządkowuje nazwom domenowym ich numer IP, np. nazwie www.linux.org odpowiada numer IP 198.182.196.56
W powyższym przykładzie domenami są org i linux.org (każda z nich potrzebuje minimum dwóch, skonfigurowanych do jej obsługi serwerów NS (name server) ), a www.linux.org to maszyna w domenie linux.org
W czasie kiedy piszę te słowa, na świecie jest 13 tzw. root serverów które przechowują domeny najwyższego poziomu (.pl, .org, .com, .fm itp.) Jeżeli ktoś jest zainteresowany jaką fantazję mieli ludzie dając poszczególnym państwom domeny krajowe może zerknąć tutaj. Czasem mam wrażenie, że niektóre kraje zostały założone tylko dla fajnej nazwy krajowej - zresztą niektóre takie jak Irak .iq czy Mikronezja .fm (słyszał ktokolwiek o takim państwie???) całkiem ładnie podbudowują sobie budżet (relatywnie).
Aktualnie są cztery (czwarta powstała 07.11.2002r) organizacje zajmujące się przydziałem numerów IP, zależnie od lokalizacji są to: www.ripe.net (Réseaux IP Européens Network Coordination Centre), www.arin.net (American Registry for Internet Numbers), www.apnic.net (Asia Pacific Network Information Centre) oraz www.lacnic.net (Latin-American and Caribbean IP Address Registry). Na stronach tych właśnie organizacji możemy sprawdzić do kogo (jakiego ISP) należy dany IP i uzyskać o nim jakieś informacje.

revDNS, reverse DNS to po prostu odwrotny DNS - działa dokładnie odwrotnie do powyższego przykładu - zamienia numer IP na nazwę maszyny.
Nie każda maszyna musi mieć swoją nazwę domenową czy wpis revDNS.

Jak możesz zmienić swój revDNS?
Należy zwrócić się z tym do swojego providera. Niestety nie każdy provider oferuje taką usługę (np. tpsa dla SDI czy Neostrady takiej usługi nie przewiduje). Jeżeli jest się właścicielem całej klasy C numerów IP (czyli co najmniej 256 numerów IP - maska /24) to wystarczy poprosić swojego providera o delegację domeny odwrotnej na własne NSy. Czasem provider zgadza się na oddelegowanie kilku wpisów revDNS na nasze serwery DNS.

No i wreszcie jak sprawdzić jaki mamy revDNS... nic prostszego :-)
W systemach unix mamy do dyspozycji polecenie host i nslookup (przy zainstalowanym pakiecie bind lub innym serwerze DNS) i po prostu możemy zapytać host 198.182.196.56 i otrzymamy jako wynik nazwę przypisaną do tego IP w bazie (na serwerze) revDNS czyli www.linux.org. W windowsie mamy polecenie nslookup, i tu także (uruchamiając właśnie ten program i wpisując interesujący nas IP) możemy sprawdzić nazwę przypisaną do numer IP (i odwrotnie).

Dodatkowych informacji o root serwerach i o samej strukturze i działaniu można przeczytać w poniższych linkach:

http://www.icann.org/committees/dns-root/y2k-statement.htm (jak można się domyślić na temat problemu Y2K ale też szeroko dyskutowana struktura i działanie całego systemu DNSów, na jakim systemie "chodzą", w których firmach stoją fizycznie i inne ciekawostki)
http://www.root-servers.org/ - lista DNSów oraz gdzie jaki się znajduje
http://www.caida.org/analysis/workload/netramet/dns/ - analiza wydajności DNSów


Q: Chcę mieć darmową domenę (nie jakiś tam alias) ale nie wiem gdzie mogę sobie taką zarejestrować...

A: Oto lista znanych mi domen:

cjb.net kom.pl one.pl
da.ru ltd.pl repe.k.pl
eu.org nie.jest.o.k.pl
int.pl uni.cc
jest.o.k.pl of.pl za.net
afraid.org

Niektóre oferują także obsługę obu serwerów DNS
A co jeżeli mamy dynamicznie przydzielany publiczny IP? No problem:

dynu.com
dns2go.org
Dość duży spis domen - http://www.technopagan.org/dynamic
ods.org
yi.org
dyndns.org
freedns.afraid.org

Niektóre powyższe obsługują też statyczne numery IP (defaultowo).


Q: Super, mam już wszystko oprócz... dwóch DNSów, a nie mogę ich sam postawić. Są jakieś darmowe?

A: Owszem :-)
Przykładowe serwisy, oba obsługują tak primary jak i secondary DNS

freedns.42.pl
www.granitecanyon.com
freedns.afraid.org


Q: Dobra, ale ja mam dynamiczne IP i chcę zarejestrować sobie domenę .com, .org, .pl ...

A: Tutaj troszkę trzeba zakombinować ale jak najbardziej się da. Po pierwsze trzeba mieć dwa skonfigurowane serwery DNS do obsługi naszej domeny, jednak w strefie domeny robimy przekierowanie rekordu NS na nasz dynamiczny IP (a raczej na podczepioną pod niego domenę), czyli np. dla binda będzie to wyglądało tak:

IN NS jakas.domena.np.ods.org.

I już konfigurujemy DNSa na swoim dynamicznym IP tak aby obsługiwał daną domene .pl
Oczywiście należy pamiętać o odpowiednio niskim ustawieniu TTL strefy (w zależności od częstotliwości zmiany naszego IPka).
a o tym jak zdobyć ową domenę pod którą możemy podpiąć naszego IPka przeczytasz powyżej.


Q: Czym się różni halfduplex od fullduplex? Jak to przestawić?

A: W uproszczeniu halfduplex polega na tym, że w jednym momencie stacja może albo nadawać albo odbierać. W połączeniu:

K1-----H-----K2

K - komputer
H - HUB

Jeżeli K1 wyśle pakiet informacji do K2 i w tym samym czasie K2 spróbuje wysłać pakiet - nastąpi kolizja (jest to rzecz normalna w środowisku hubów) i K2 przestanie nadawać. Kiedy mamy huba 10Mbps - nie będziemy mogli jednocześnie z tą prędkością ściągać informacji i wysyłać.
Na tym polega halfduplex - nie jest możliwe jednoczesne odbieranie i nadawanie informacji.
W fullduplexie natomiast (zwany po prostu duplexem) jest to możliwe (w środowisku switchowalnym):

K1-----S-----K2

S - Switch

W tym ustawieniu jak najbardziej możliwa jest jednoczesna transmisja i odbiór danych. Dla sieci 10Mbps możliwy jest jednoczesny odbiór z prędkością 10Mbps jak i wysył danych z tą samą prędkością.

Przy okazji warto obalić dwa mity - po pierwsze często w folderach switchy producenci umieszczają informacje o maksymalnej prędkości dla fullduplexu 200Mbps - to nic innego jak marketing. Bo np. kupując łącze symetryczne (czyli prędkość w obie strony jest taka sama) do Internetu 1Mbps otrzymujemy takie właśnie łącze - nikt nam nie wmawia że jest to 2Mbps bo przecież jednocześnie możemy wysyłać z taką prędkością jak i odbierać pakiety danych. Mam nadzieję że widzicie analogię :-)
Drugim często pojawiającym się na grupie mitem jest to, że halfduplex wymaga 2 par skrętki, a fullduplex wszystkich 4 par. Otóż jest to bzdurą, oba tryby wymagają dokładnie 2 pary (piny 1, 2, 3 i 6), pozostałe dwie pary nie są używane.

Teraz jeszcze info jak można przełączyć się między trybami. Odpowiedź jest prosta - w Windowsie po prostu wchodzimy we właściwości karty sieciowej i przestawiamy :-) Pamiętaj jednak o tym że fullduplex nie będzie dobrze funkcjonował w otoczeniu hubów - przy podłączeniu komputera do switcha albo do innego komputera skrosowaną skrętką będzie działał prawidłowo.
Pewniejszym jest (i często dla innych systemów trzeba właśnie tak robić) odpalenie programu dostarczonego razem z sieciówką na dyskietce (rzadkością jest nadal dostarczanie sterowników do kart sieciowych na płytach ;-) Mamy tam różne tryby testów sieciówki, jak i najczęściej możliwość przestawienia trybu fullduplex-halfduplex.


Q: Co to jest proxy? Czy warto mieć go w sieci?

A: Proxy... w ogólności jest to program (czasem nazywamy tak maszynę na której jest ów program zainstalowany) którego zadaniem jest odebranie zapytania od klienta po czym zadanie tego pytania dalej, a po otrzymaniu odpowiedzi przekazanie jej klientowi. Czym w takim razie różni się proxy od maskarady? Ano tym że maskarada po odebraniu pakietu po prostu zmienia adres źródłowy i przekazuje go dalej. Proxy natomiast po odebraniu zapytania od klienta sam zadaje pytanie i po otrzymaniu odpowiedzi przekazuje ją pytającemu. Nie jest to proste przekazanie pakietów.
Dzięki takiej funkcjonalności jest możliwe cache'owanie zapytań do proxy, co może znacznie poprawić wydajność łącza. Po prostu przy zapytaniu o taką samą informację przez innego klienta proxy może udzielić tej samej odpowiedzi zamiast jeszcze raz pobierać ją z Internetu.
Dochodzimy tutaj do pytania "co to daje?"... proxy zazwyczaj używa się dla protokołu http (www) - dzięki temu sporo dublujących się zapytań lecących normalnie za każdym razem w sieć nie dubluje się - po pierwszym zapytaniu strona (lub jej część) jest przechowywana na serwerze proxy i potem już pobierana bezpośrednio z tego serwera. Wbrew pozorom sporo stron jest odwiedzanych wielokrotnie, przez tego samego lub innych klientów (takie jak onet, google i inne) i często potrafi to przejąć sporą część ruchu.
Oczywiście można skonfigurować proxy tak, aby działało dla innych protokołów niż http.

Najczęściej stosowanym serwerem proxy jest squid, do pobrania ze strony www.squid-cache.org. Tam też więcej informacji na ten temat. Squid działa pod systemem unix, jest też wersja dla Windowsa NT. Pod Windowsem często wykorzystuje się wbudowany w Winroute cache (choć wiele osób ma zastrzeżenia co do odświeżania się stron w cache'u - winroute to swego rodzaju kombajn - serwer smtp, pop3, proxy, firewall, dhcp i realizuje NAT) i pewnie sporo więcej - jednak nie używam więc nie podam :-)
No, może jeszcze Winproxy


Q: Co to jest NAT? Do czego jest mi potrzebny? Czym jest maskarada?

A: NAT to Network Address Translation. Polega on na tłumaczeniu (translacji) adresów IP z jednych na inne. Rozróżniamy dwa rodzaje NATu - pierwszym jest SNAT (Source NAT - NAT źródłowy) który polega na zmianie adresu źródłowego pakietu (podmianie ulega adres z którego pakiet przyszedł do maszyny NATującej). Maskarada (masquerade) jest podzbiorem SNATu.
DNAT (Destination NAT - NAT docelowy) jest jak już pewnie się domyślasz zmianą adresu docelowego pakietu (czyli podmianie ulega adres do którego pakiet zdążał). Podzbiorem DNATu jest np. forwardowanie portów czy transparent proxy.

Maskarada zazwyczaj potrzebna jest do tego, aby podłączyć LAN do Internetu mając do dyspozycji jeden numer IP z publicznej puli. Po prostu (zgodnie z zasadą działania SNATu) przy przejściu pakietu przez maszynę NATującą (maskującą) zostanie zmieniony adres źródłowy pakietu tak, aby wyglądał że pochodzi od maszyny NATującej i puszczony dalej w świat z innego już portu. Maszyna NATująca rozpoznaje wracające do siebie pakiety (zgodnie z tablicą przechowywaną w pamięci gdzie port wychodzący przypisany jest do numeru IP komputera z LANu) i przekazuje je do wnętrza sieci. Oczywiście są inne formy maskarady jak choćby wykorzystanie do maskowania kilku IP z puli publicznej.
Maskarada w pewnym sensie chroni też sieć wewnętrzną przed atakami z zewnątrz, gdyż (zazwyczaj) komputery z LANu nie są dostępne bezpośrednio z Internetu co znacznie utrudnia (i często uniemożliwia) atak. Z drugiej strony utrudnia to też stawianie serwerów (ftp, poczty...) za maskaradą i najczęściej wymaga forwardowania portu z maszyny NATującej do wewnątrz sieci.

Jak skonfigurować NAT na różnych systemach? Oto garść linków:

Linux (ipchains), Linux (iptables), FreeBSD (natd), FreeBSD (ipnat), pod Windowsem służy do tego oprogramowanie Winroute, Wingate czy wbudowany ICS.


Q: Co to jest MAC? Jak mogę zmienić numer MAC karty sieciowej?

A: MAC (Media Access Control address) jest to adres sprzętowy, unikalny dla karty sieciowej który jednoznacznie ją identyfikuje. Adresy MAC wykorzystywane są w 2 warstwie modelu OSI. Potrzebny jest do nawiązania transmisji, gdyż komputer, chcąc wysłać pakiet do innej maszyny o znanym numerze IP najpierw wysyła broadcast z pytaniem "hej! kto ma ten IPek?" a maszyna z tymże IPkiem odpowiada "ja! ja! ja! masz coś do mnie? no to wal na ten MAC" i już sobie dalej gadają swobodnie ;-)

A jak zmienić ten unikalny adres? W linuksie jest to bardzo proste, służy do tego polecenie ifconfig, więc man ifconfig ;-) Oczywiście w ten sposób nie zmieniamy MACa karty sieciowej - emulujemy tylko programowo inny MAC.
Jeżeli chodzi o Windows, to sprawa jest zróżnicowana... czasem pozwala na to software dołączany do karty na dyskietce, czasem pozwalają na to sterowniki karty (w konfiguracji karty wpisujemy po prostu adres sprzętowy jako 000CA...), czasem trzeba szukać właściwego programu (np. do kart z chipsetem Realtek 8019 i 8029 można spróbować użyć programu pg-80x9.exe), do 8139 może służyć np. pg-8139.exe (na tej stronie są też pozostałe dwa programy). Z oprogramowaniem tym trzeba postępować jednak bardzo ostrożnie!
To jeszcze jedna stronka z softem dla Windowsa XP i 2000.

Spis producentów kart sieciowych wraz z odpowiadającymi im numerami MAC znajdziesz pod tym adresem http://standards.ieee.org/regauth/oui/oui.txt

Na koniec - jak ten MAC sprawdzić. Dość proste ;-) W Windowsie 9x/Me służy do tego polecenie winipcfg, w Windowsie NT,2k,XP polecenie ipconfig /all. W Linuksie/FreeBSD oczywiście ifconfig.


Q: Czym jest Wake On Lan (WOL)? Jak włączyć zdalnego kompa? Jak go wyłączyć?

A: Wake On Lan oznacza dokładnie to co oznacza - budzenie komputera po otrzymaniu specyficznego pakietu (zwanego magic packet) z sieci. Aby móc włączyć komputer właśnie za pomocą magic packet'u, maszyna musi być wyposażona w zasilacz ATX (który pozwala po wyłączeniu komputera dawać ciągle napięcie na płytę - w końcu coś musi wykryć ten magiczny pakiet :-) ) oraz musimy znać adres IP maszyny którą chcemy włączyć i jej adres fizyczny (MAC).
Dodatkowo płyta główna musi obsługiwać standard WOL oraz mieć włączoną w BIOSie opcje budzenia z sieci. W starszych płytach głównych należy jeszcze połączyć kartę sieciową z płytą główną kabelkiem do tego przeznaczonym. W nowszych płytach (począwszy od standardu PCI 2.2) nie jest to już wymagane (oczywiście jeżeli karta sieciowa wspiera ten standard) - odpowiedni sygnał jest już przesyłany przez złącze PCI.

O szczegółach można przeczytać np. na stronach Intela lub na stronach wol-mini-howto

Jak obudzić kompa? Należy ściągnąć odpowiedni program do sformułowania i wysłania magicznego pakietu, przykładem takiego programu może być LANStart pod Windows'a. Opcję WOL posiada także powszechnie znany sniffer Anasil.
Dla innych systemów (także dla Windows'a, Linuksa) znajdziesz programy na stronie wol-mini-howto w dziale narzędzi.

I jeszcze ciekawostka - jak włączyć komputer poprzez WOL z internetu? Np. za pomocą tej strony :-)

Kolejną stroną na której możemy poczytać czym jest WOL, zobaczyć jak działa Wake On Wan (czyli obudzenie komputera z Internetu), ściągnąć programik do budzenia z linii komend DOSa, spróbować wyłączyć komputer przez Internet, ściągnąć trochę narzędzi związanych z tematem WOL, WOL dla Windowsa 3.1 - i wiele innych, jest strona Depicusa.
Jest tam też trochę innych narzędzi ynternetowych :-)

Pewnie niektórzy będą też zainteresowani jak wyłączyć taki włączony zdalnie komputer. Można zainstalować soft do zdalnej administracji komputerem, ale można też posłużyć się prostym programikiem Poweroff (z dość rozbudowanym wachlarzem opcji).







3. Kabelki, druciki, jak je połączyć w sieć (topologie)?


Q: Jak zrobić mini sieć w domu?

A: Nie opiszę wszystkich sposobów realizacji sieci. Opiszę obecnie najpopularniejszy.

Co potrzebujemy? Jeżeli chcemy połączyć tylko dwa komputery, to wystarczą dwie karty sieciowe (w zasadzie dowolne, obecnie popularne są karty oparte na chipsecie Realtek 8139C między którymi nie ma większych różnic) połączone skrosowaną skrętką. Dla prędkości 10Mbps potrzebujemy co najmniej skrętki kategorii 3, a dla 100Mbps minimum 5 kategorii.
Jeżeli mamy więcej komputerów powinniśmy zakupić hub bądź switch. O różnicach można poczytać w tym miejscu.
Jeżeli masz wątpliwości jaką skrętką powinieneś łączyć komputery z hubami itp. - ten link jest dla ciebie.
Konfigurację protokołu tcp/ip znajdziesz tutaj.
Dopuszczalne przez normy odległości omówiłem tutaj.


Q: Jak powinny wyglądać połączenia we wtyczkach RJ-45?

A: Określono dwa standardy rozmieszczenia par dla połączenia w sieci Base-T.
Wtyczki generalnie powinno się robić wg standardu EIA/TIA568B - zazwyczaj w tym standardzie są robione końcówki.
(Wtyczkę trzymamy tak żeby zatrzask był niewidoczny a kontakty były na górze, otworem na kabel do siebie.
Numery przewodów zaczynając od lewej strony.)

W standardzie EIA/TIA568B wygląda tak:
1 - Biały z pomarańczowym
2 - Pomarańczowy
3 - Biały z zielonym
4 - Niebieski
5 - Biały z niebieskim
6 - Zielony
7 - Biały z brązowym
8 - Brązowy

Prawidłowym zakończeniem kabla crossover tak, aby kabel ten działał zarówno dla 100BaseTX jak i dla 1000Base-T jest następująca kolejność żył po drugiej stronie (po jednej mamy właśnie standard B)

1 - Biały z zielonym
2 - Zielony
3 - Biały z pomarańczowym
4 - Biały z brązowym
5 - Brązowy
6 - Pomarańczowy
7 - Niebieski
8 - Biały z niebieskim

Często spotyka się także standard EIA/TIA568A, który jest wymieniony poniżej, jednak jest on mniej powszechny niż EIA/TIA568B.
W standardzie EIA/TIA568A rozmieszczenie przewodów we wtyczce RJ45 jest następujące:

1 - Biały z zielonym
2 - Zielony
3 - Biały z pomarańczowym
4 - Niebieski
5 - Biały z niebieskim
6 - Pomarańczowy
7 - Biały z brązowym
8 - Brązowy

Często kable crossover są robione jako - z jednej strony standard A, a z drugiej B. Tak zrobiony kabel będzie działał poprawnie dla 10Mbps i 100Mbps, natomiast nie będzie on działał dla 1Gbps. Aby mieć pewność, że kabel będzie także działał dla 1000Base-T, należy go zrobić wg instrukcji dla kabla crossover powyżej.
Dodatkowo warto nadmienić, że jeżeli karty/switche wspierają autonegocjację MDI/MDI-X, to urządzenia będą się komunikować poprawnie niezależnie od tego, czy użyjemy kabla krosowego czy prostego, oraz czy łączymy komputer-komputer czy komputer-switch.
Jak widać W standardzie A i B zamieniono ze sobą pary pomarańczową i zieloną.
W standardowych przypadkach trzeba obydwa końce kabla wykonywać zgodnie z normą EIA/TIA568B. Jednak jeżeli chcemy połączyć ze sobą dwa komputery bez pośrednictwa huba, wtedy jeden koniec kabla wykonujemy zgodnie z normą B, a drugi jak wymieniono powyżej aby uzyskać kabel skrosowany (z ang. crossover cable) bądź krzyżowym (spolszczając ;-) ).
Jeżeli używane przez Ciebie kable nie są zgodne z którąś z tych norm, sprawdź czy 1-2, 3-6, 4-5 i 7-8 są z tych samych par. Jeżeli tak, unikniesz wielu kłopotów.
Tak naprawdę w standardach chodzi tylko o standaryzację pewnych połączeń, sama idea zaś polega na tym, aby przewody sygnałowe (czyli te które dochodzą do pinów 1 i 2 oraz 3 i 6) były ze sobą skręcone - aby przewód 1 i 2 był jedną skręconą parą (np. przewód pomarańczowo-biały i pomarańczowy) oraz 3 i 6 drugą (np. przewód zielono-biały i zielony) - a także pozostałe pary dla 1Gbps.
Dzięki skręceniu par uzyskujemy m.in. większą odporność na zakłócenia elektromagnetyczne, co ma duże znaczenie dla prędkości 100Mbps i wyższych, a mniejsze dla 10Mbps. Dodatkowo transmisja odbywa się tak, aby wzajemne zakłócanie się przewodów w kablu były minimalne (co jest także zasługą głównie skręcenia odpowiednich przewodów).
Na koniec drobna informacja, która często umyka grupowiczom mniej obeznanym z tematem. Tak 10Mbps, jak i 100Mbps (w technologii 10BaseT i 100BaseTX) wykorzystują tylko 2 pary przewodów (4 kable). 1000Base-T używa już wszystkich 4 par (8 kabelków).


Q: A jak podpiąć kabelki do wtyczek jeżeli chcę podłączyć dwa komputery na jednym kablu?

A: Na wstępie - odradzam. Nie jest to zgodne z normami, powoduje dodatkowe zakłócenia na żyłach i na pewno nie jest korzystne dla transmisji. Co może nas skłonić do użycia tego rozwiązania? Np. przeprowadzony przez szereg otworów, w których już nic się nie zmieści, kabel - zakładam że położenie dodatkowego kabla wiąże się z bardzo dużymi kosztami/wysiłkiem. Prawie na pewno zadziała to dla 10Mbps, zazwyczaj zadziała dla 100Mbps - ale pamiętaj że nikt ci tego nie zagwarantuje - tak samo jak przekroczenia 100m dla 100BaseTX.

Aby wykonać takie połączenie trzeba pamiętać, że w 10BaseT i 100BaseTX wykorzystuje się 1, 2, 3 i 6 pin w wtyczce, oraz że 1 i 2 oraz 3 i 6 powinny być sparowanymi kabelkami. Zakładam poniższy scenariusz, Ia to wtyczka wpięta w komputer 1, Ib i IIb to wtyczki wpięte do switcha odpowiednio od komputera 1 i 2, a IIa to wtyczka wpięta w komputer 2.

 
Ia  --\_____________/-- Ib 
IIa --/             \-- IIb 

We wtyczkach Ia i Ib stosujemy następujący schemat:

1 - Biały z pomarańczowym
2 - Pomarańczowy
3 - Biały z zielonym
4 - niepodłączony
5 - niepodłączony
6 - Zielony
7 - niepodłączony
8 - niepodłączony

A wtyczki IIa i IIb zaciskamy np. według poniższego:

1 - Biały z brązowym
2 - Brązowy
3 - Biały z niebieskim
4 - niepodłączony
5 - niepodłączony
6 - Niebieski
7 - niepodłączony
8 - niepodłączony


Q: To jakim w końcu kablem, skrosowanym czy prostym mam łączyć urządzenia?

A: Jeżeli łączysz urządzenia takie jak komputery czy routery ze sobą, zazwyczaj potrzebujesz skrętki skrosowanej. Jeżeli łączysz takie urządzenia jak hub/switch z komputerem/routerem - zazwyczaj będzie to skrętka prosta. Port uplink w hubie/switchu (zazwyczaj współdzielony z portem pierwszym) to nic innego jak wewnętrzna zamiana pinów 1 i 2 z 3 i 6 co daje wewnętrzne krosowanie.

I tak np, łącząc huba (port normalny) z komputerem używamy kabla prostego, ale jeżeli zechcemy połączyć hub (port uplink) z komputerem, musimy użyć kabla skrosowanego (zgodnie z logiką boolowską zaprzeczenie zaprzeczenia = wyrażenie wyjściowe, czyli kabel prosty).
Jeżeli chcemy połączyć router z komputerem lub dwa komputery ze sobą użyjemy kabla skrosowanego, ale jeżeli łączymy go z hubem/switchem, użyjemy kabla prostego (chyba że połączymy go z portem uplnik - wtedy skrosowany, wg zasady wyjaśnionej wcześniej).
Dalej - jeżeli łączymy dwa huby ze sobą, to możemy użyć kabla skrosowanego (port normalny - port normalny lub port uplink- port uplink) lub prostego (port uplink - port normalny).


Q: Jakie mogą być maksymalne odległości między urządzeniem X a urządzeniem Y?

A: Jeżeli chodzi o skrętkę i standard 100BaseTX:

100m max miedzy komputerami bądź między komputerem a hubem/switchem/routerem.
Między dwoma dowolnymi komputerami/routerami może być max. 205m oraz dwa huby.
Switch jest traktowany jak komputer i rozszerza w/w odległość.
Co do liczby switchy w szeregu to nie ma teoretycznych ograniczeń (chyba że używamy protokołu Spanning-Tree wtedy do 7 switchy w szeregu licząc od tzw. switcha-root). Istnieje natomiast ograniczenie praktyczne, które wynika z tego, że jeżeli zbyt dużo maszyn (zwłaszcza windowsowych) znajdzie się w jednej domenie broadcastowej, liczba broadcastów (pakietów wysyłanych na adres broadcast sieci - adres rozgłoszeniowy) będzie tak duża, że będzie zapychała sporą część łącza - wtedy należy podzielić sieć routerem/routerami (podzielą one sieć na kilka domen broadcastowych).

Przykładowo poniższe wykresy sieci są prawidłowe

K----100m----H----95m---H---10m----S----100m---S---100m---S---100m---H---5m---H---100m---K

K--55m---S----100m-----H-----100m----K | 100m | H----100m----H----5m----S----55m----K H - HUB S - SWITCH K - KOMPUTER

Dla standardu 10BaseT wygląda to podobnie, z tym że max liczba hubów między komputerami/switchami to 4 sztuki (z czego 2 wykorzystane do "przedłużenia" a 2 do podłączenia użytkowników) a max odległość miedzy dowolnymi dwoma komputerami/switchami/routerami może wynosić do 500m (z czego pojedynczy odcinek max 100m). Raczej nikt już nie przestrzega pełnej zasady 5-4-3 opisanej powyżej, zazwyczaj spokojnie można używać wszystkich 4 hubów do podłączenia użytkowników.

Dla standardu 10Base2 max. długość magistrali (odległość terminator-terminator) to 185m. Maksymalna liczba klientów w jednym segmencie magistrali to 30, przy czym minimalna odległość między nimi to 0,5m.

Oczywiście osobną sprawą jest przekraczanie standardów i tego nie da się usystematyzować...
Były wymieniane na grupie przypadki osiągnięcia tak 300m na kablu koncentrycznym standardu 10Base2, jak i odległości rzędu 200m na skrętce i czasem nawet działało to na 100Mbps! (choć najczęściej tak duże przekraczanie oznaczało spadek prędkości do 10Mbps).
Tak naprawdę jeżeli sam nie sprawdzisz ile twój sprzęt będzie w stanie wyciągnąć, nie dowiesz się, bo to zależy od wszystkiego - od sprzętu, od środowiska (czyli czy są duże zakłócenia), od tego którędy poprowadzisz kabel, od porządnego zarobienia końcówek czy od szczęścia (na które składają się pozostałe niby błahe przyczyny). Jeżeli zastanawiasz się jaki sprzęt kupić aby móc przekroczyć normy, to najlepiej markowy, czyli 3com czy intel. Osobiście odradzam przekraczanie norm o ile to możliwe - bo tak naprawdę nigdy nie masz pewności czy to ruszy, a czasem na późniejsze zmiany może być za późno i zbyt drogo.
Jeszcze jedno - test polegający na sprawdzeniu czy będzie działać podłączając np. szpule 200m do dwóch kart nie jest (!!!) miarodajny, bo są to zupełnie inne warunki środowiska niż te w których kabel będzie pracował.

Poszerzenie powyższych informacji (okablowanie, standardy, różne technologie ethernetu) znajdziesz na stronie www.ethermanage.com.


Q: Jakiego kabla użyć do instalacji na zewnątrz budynku?

A: Jest specjalnie do tego celu produkowana skrętka żelowana - tzw. outdoor. Jest odporna na warunki atmosferyczne - głównie chodzi o wilgoć. Jest jednak dość droga - 4, 5 razy droższa niż normalna skrętka UTP kat. 5. Natomiast nie uchroni nas to przed jedną rzeczą - wyładowaniami atmosferycznymi. Do tego celu służą protectnety (www.apcc.pl) które też do najtańszych nie należą, jednak na allegro można kupić gotowe, tańsze układy, a w sieci znaleźć sporo schematów. Taki protectnet należy porządnie uziemić (jak wykonać uziemienie - poniżej).
Do przewieszek bezpieczniej jest raczej użyć skrętki ekranowanej (ftp, stp, sftp - ftp jest szczelniejsza elektromagnetycznie od stp, ale np. jest mniej odporna na warunki atmosferyczne i z czasem może się kruszyć). Taką skrętkę ekranowaną należy dokładnie uziemić w jednym miejscu (to ważne, bo uziemienie z dwóch stron spowoduje przepływ przez ekran prądu wyrównawczego). Jeżeli używamy kabla koncentrycznego - uziemiamy segment także w jednym miejscu.


Q: Jak zabezpieczyć przewieszkę/kabel w ziemi? Jak uziemić ekran skrętki/koncentryka?

A: Uziemienie to ważna rzecz dla przewieszek. Dla kabli w ziemi również, choć niewątpliwie ma to mniejsze znaczenie i można się tam pokusić o kabel nieekranowany (jednak zabezpieczenie się protectnetem może przynieść nam oszczędności (nowy sprzęt kosztuje ;-) - protectnet zakłada się z obu stron kabla więc potrzeba dwóch per przewieszka).
Kiedy kabel kładziemy w ziemi, dobrze jest umieścić go w rurce PCV lub peszlu - ale bardzo ważna rzecz - taki peszel musi być szczelny! Jeżeli dostanie się tam woda, nasz kabel będzie stale w niej zanurzony. Takiej rurki nie należy montować tak aby zaczynała się wewnątrz budynku (np. w piwnicy) gdyż grozi to wybuchem - ew. trzeba bardzo szczelnie zabezpieczyć taką rurkę i odciąć ew. dopływ gazów.
Nie należy podłączać ekranu skrętki do kaloryfera czy rur wodociągowych. Po pierwsze dlatego, że czasem stosuje się rury plastikowe (wbrew zaleceniom) które uziemieniem nie są, a po drugie - gdyby podczas uderzenia pioruna w kabel sąsiad sprawdzał czy kaloryfery grzeją, mogłoby go to zabić. Nie wolno też uziemiać do piorunochronu.
Do czego zatem podłączać? Ano zrobić sobie uziemienie ;-) Przykładem może być ocynkowane wiadro, które lekko dziurawimy na dnie, wsypujemy wymieszany piasek z solą (nie za dużo soli - ma za zadanie poprawić przewodność) i zakopujemy (im głębiej tym lepiej, pół metra - metr między powierzchnią a górą wiadra powinno wystarczyć). Potem łączymy ekran kabla z wiadrem w miarę grubym kablem (najlepiej miedzianym lub innym stopem o dobrej przewodności) i już :-) Zamiast wiadra można się posłużyć innym żelastwem (np. samochodem ;-).

Taką skrętkę ekranowaną należy dokładnie uziemić w jednym miejscu (to ważne, bo uziemienie z dwóch stron spowoduje przepływ przez ekran prądu wyrównawczego).
W przypadku kabla koncentrycznego uziemiamy w jednym miejscu cały segment koncentryka.

Co można jeszcze zrobić... przy przewieszkach lepiej użyć linki z tworzywa niż metalowej. Dodatkowo nad samym kablem można przeciągnąc linki metalowe celem zbierania ewentualnych wyładowań - te linki możemy podłączyć do piorunochronu lub osobnym kablem do naszego uziemienia. Przykładowe ustawienie linek:

x Linka

o Kabel

lub

x     x

   o

Będzie to działało na zasadzie piorunochronu w sieciach elektroenergetycznych, zbierając ew. wyładowania.


Q: Jakim programem mogę narysować schemat sieci?

A: Jest kilka programów, wszystkie które znam są pod jedyny słuszny system, Windows - jeżeli znacie inne chętnie dodam je tutaj.

Cisco ConfigMaker - darmowy, ale dość... monotematyczny jeżeli chodzi o producenta sprzętu ;-)
Visio z pakietem Network Equipment - bodaj niedarmowy, jak to produkt M$
LanFlow - komercyjny, dostępne demo
NetViz - komercyjny, dostępne demo
NetworkNotepad - darmowy program do robienia schematów pod Windows
WhatsUp Gold - komercyjny, dostępne demo. Pozwala także monitorować sieć
DIA - darmowy program, a'la Visio, działa pod Windowsem i Linuksem.






4. Jak udostępnić (i problemy związane)...


Q: Jak mogę podzielić łącze które mam? Dostałem tylko jedno IP...

A: To trochę zależy od tego jakiego typu to jest łącze, ale zazwyczaj nie ma to większego znaczenia.

Czasem jest tak że twój provider przewidział taką możliwość - wtedy najczęściej wystarczy doprowadzić sygnał Internetu do huba/switcha i z tego huba/switcha "rozprowadzić" go na pozostałe komputery. Konfiguracja komputerów (IP/maski/bramki) zależą wtedy od twojego providera i od niego powinieneś uzyskać te informacje.

Jeżeli provider nie przewidział takiej możliwości, konieczne jest zastosowanie dodatkowego (lub jakiegoś obecnego już) urządzenia. Może to być router sprzętowy (zależnie od łącza różny), może to być komputer z dwiema sieciówkami (który będzie pełnił rolę routera) lub np. komputer z sieciówką i kartą synchroniczną z interfejsem V.35 (przy zakupieniu polpaku np).
Jak się za to zabrać? Po pierwsze musisz skonfigurować coś co będzie serwerem/rozdzielało łącze (serwer/router) tak aby działało w internecie - nadać mu IP które dostałeś od providera, ustawić maskę, bramkę, dns + ew. inne zabiegi (np. dla Neostrady+ będzie to instalacja protokołu PPPoE). Dla SDI może być pomocna ta strona. Konfiguracja Neostrady+ dla linuksa opisana jest na stronie faq.neostrada.pl oraz na neostrada.info.
Konfiguracja podziału łącza step-by-step przy użyciu Winroute jest opisana choćby na tej stronie.
Następnie na drugim interfejsie musisz nadać IP z puli prywatnej (nazwijmy je X.X.X.X), i z takiej samej puli musisz nadać IPki pozostałym klientom, wpisując dodatkowo jako bramę (gateway) IP X.X.X.X
Ostatnią rzeczą jaką musimy zrobić to uruchomić NAT (w tym przypadku maskaradę). Ale o tym już dalej.
Zamiast NATu można czasem próbować posiłkować się serwerem proxy, choć jest to tylko półśrodek.

Trzeba tu jeszcze wspomnieć o dystrybucjach dyskietkowych - jeżeli nie oczekuje się straszliwych możliwości i chcemy zmniejszyć koszty podziału, to spokojnie możemy odpalić jakąś dyskietkową dystrybucję na jakims 486dx np. (już chodzi bardzo przyzwoicie). Dyskietkowe dystrybucje to np. freesco, zipslack. Dość popularną stroną z opisem instalacji/konfiguracji obu tych dystrybucji jest www.freesco.pl gdzie znajdują się też opisy instalacji SDI pod różnymi systemami, oraz posiada dość rozbudowane FAQ.


Q: A co zrobic z neostradą plus i tym całym USB??

A: No jest to lekki problem... tepsa ślicznie sobie poradziła z udostępnianiem łącza przez dużą część użytkowników. Problemem jest to, że wg mojej wiedzy nie ma jeszcze routera z wejściem USB który by mógł to łącze podzielić (jest jeden, ale podobno nie współpracuje z tym typem modemu).
Rozwiązaniem będzie na pewno (póki co) serwer na komputerku - siakimś Linuksie czy Windowsie. Jeżeli chodzi o konfigurację pod linuksem to znajdziesz troche info na ten temat na linuksowej stronie S.O.S. Inny, alternatywny opis jest jeszcze w trybie tekstowym.
Pod Windowsa stron nie znam, ale pewnie sam znajdziesz :-) (a jak znajdziesz daj znać, a umieszczę tutaj link). Dużo też informacji znajdziesz w archiwum grup pl.comp.networking i alt.pl.neostrada, oraz pl.comp.sieci bo temat sie często przewija ostatnimi czasy.
Aha - oczywistym rozwiązaniem może być kupno własnego modemu ADSL z wyjściem ethernetowym. Przykładem może być Allied Telesyn AR250 (kosztuje pewnie okolo 800zl, ale ma przy okazji firewall'a, filtrowanie po zawartosci pakietow (?), prosty QoS), czy też produkty PLANETa (ADE-3000, ok. 500PLN; ADE-4000, ok. 600PLN; ewentualnie modem ADSL jako karta PCI - ADP-8301 ADSL PCI, ok. 250PLN).

Inne przykłady urządzeń mogących zastąpić tepsiany modem:
- Router DSL-504 (lub DSL-500) 4-port 10/100 D-Link
(jak masz wiecej propozycji to pisz :-)


Q: OK, ale to lekka lipa.. Jak mogę podzielić łącze sprawiedliwie? Koledze 10KB/s a sobie 20KB/s?

A: Cóż, odpowiedź zależy od systemu operacyjnego na którym masz router (bądź po prostu od routera :-).

Jeżeli twój router obsługuje QoS (Quality of Service) to jest duża szansa że potrafi przydzielić łącze poszczególnym IPkom/grupom IPków. Tutaj musisz sprawdzić w dokumentacji danego routera.
Jeżeli chodzi o router na systemie Windows to sprawa jest lekko przegrana... a może nie? Tutaj możemy posiłkować się następującymi programami
Sygate Office Network - pozwala ustawiać priorytety pakietom od danych userów, na dane porty. Nie ograniczymy tu np. transferu do 10KB/s
Shunra Nimbus - nie sprawdzałem w tym zastosowaniu ale podobno działa, freeware
NAT32 Plus - komercyjny, nie sprawdzałem zasady działania ale w manualu jest napisane że działa :-)
Total Traffic Control - komercyjny, jest dostępny darmowy trial
Bandwidth Controller - ten program podobno potrafi wszystko :-) Potrafi być kapryśny jeżeli chodzi o system (zgłaszano mi problemy jeżeli chodzi o w2k), oraz o CPUżerność
Netlimiter - wg niektórych jeszcze lepszy niż powyżej wymieniony sofcik
Natomiast podobne programy które czasem są wymieniane zazwyczaj są zwykłymi serwerami proxy które ograniczają ruch http, co jak wiadomo niekoniecznie najbardziej obciąża łącze :-)
DU Super Controler - potrafi przydzielic przepustowosc per program
Przykładowy serwer proxy, CCPROXY (krótki opis konfiguracji dostępny w downloadzie klubu his'a) pozwala na ograniczenie poszczególnych użytkowników/IPków do określonych prędkości (KaZaA pozwala na ustawienie korzystania z serwera Socks5). Jeżeli klient nie godzi się na skonfigurowanie kazy tak aby korzystała z serwera Socks5 - odcinamy możliwość korzystania z kazy bez tego serwera.

Jeżeli jesteśmy wyposażeni w Linuksa, to jesteśmy w dużo lepszej sytuacji. Nie mówię tutaj o dystrybucjach typu Freesco czy Zipslack (choć jest pakiet dla Freesco o nazwie justice, aczkolwiek nie jest to tak konfigurowalny QoS jak można by chcieć..)
Więc jak to zrobić za pomocą Linuksa? Potrzebujemy po pierwsze pakietu iproute2(dokumentacja - http://www.linuxgrill.com/iproute2-toc.html).
Potem możemy wykorzystać np. skrypt cbq.init którym możemy ograniczyć choćby maksymalny download czy upload per IP (lub per port :) choć nie możemy w nim (w skrypcie! bo w samym CBQ jak najbardziej jest to możliwe) ustawić tzw. pożyczania (jeżeli są dwie osoby to dostają po 1/2 przepustowości a jak dochodzi trzecia to każda ma około 1/3 łącza. Aby to zrobić możemy wykorzystać htb (zamiennik cbq). Jeszcze jedną propozycją może być Wonder Shaper, czy dość ciekawy program shaperd (alternatywna strona tego softu) na stronie są dostępne przykładowe wykresy dokumentujące działanie programu). Jeżeli chcesz drążyć temat to polecam tłumaczenie dokumentu Linux 2.4 Advanced Routing & Traffic Shaping HOWTO.

Dokumentację po polsku opisująca opis instalacji htb oraz jego konfigurację znajdziesz (niespodzianka ;-) tutaj.
Drugim adresem pod który IMHO warto zajrzeć jest strona tonid'a z gotowymi przykładami ładnie pokomentowanymi.

Jeżeli chodzi o FreeBSD to polecam odwiedzić strony dotyczące dummynet - jedną i drugą.
Dla OpenBSD natomiast opis ALTQ.


Q: Jak mogę zabronić w sieci używania programów typu p2p (KaZaA) czy innych (np. ftp)?

A: To jest już sprawa troszkę trudniejsza... Po pierwsze musisz mieć urządzenie które ma możliwość blokowania portów i przez które pakiety lecą w świat. Jeżeli masz np. router od Neostrady+ (i korzystasz z niego z funkcją routera) to raczej nic nie zrobisz bo TPSA nie daje loginu i hasła do modemu więc i nic nie możesz tam ustawić.
Jeżeli masz router sprzętowy (nie będę wnikał w dywagacje co to jest router sprzętowy a co software'owy - mam nadzieję że czujesz to intuicyjnie) z możliwością filtrowania pakietów (czyli z funkcją firewall'a) to już jest lepiej. Jeżeli Internet udostępniasz jakimś programem pod Windows'em (np. Winroute) to też nie jest źle, a jak używasz unixa to jesteś w domu :-)
Ogólnie rzecz polega na tym aby zablokować transmisję (chyba że chodzi o ograniczenie - ale wtedy postępuje się podobnie z tym że zamiast blokowania odpowiednio kształtujemy ruch) na określone porty (względnie numery IP) i cały pic polega na tym aby wiedzieć jakie to porty.
Dla podstawowych usług takich jak ftp chociażby można w swoim katalogu z Windows'em (bądź w /etc) znaleźć plik services w którym ładnie są te usługi powypisywane (i dowiemy się tam że ftp korzysta z portu 21 protokołu tcp/ip - blokujemy wyjście pakietów na ten port na routerze i już nikt nie połączy się z serwerem ftp - chyba że postawionym na innym porcie, ale to inna bajka - na każdą blokadę znajdzie się obejście ;-). Co zrobić z usługami nie wymienionymi w services... hmm, można poszukać w Internecie, jak np. na tej stronie, lub na tej. Sporo informacji można znaleźć na witrynie samej gry, w dokumentacji gry lub po prostu na google - ewentualnie bawić się poleceniem netstat (netstat -a -n) na stacji i sprawdzać dokąd się dobija dany program.
A co mamy zrobić jak już wiemy z którego portu korzysta gra/program? Zablokować go :-) Czasem może się to okazać dość trudne, tak jak w przypadku choćby programu KaZaA - jest to tak sprytna bestia (a jej twórcy tak durni), że program zmienia sobie porty i to co skutkowało kiedyś (blokada portu 1214 tcp/ip) już nie działa - KaZaA potrafi zmieniać porty jak rękawiczki - a to port 80 (http), a to 443 (https), jak te niedostępne to pójdzie po 25 (smtp) lub 110 (pop3) - po prostu paranoja, a to dopiero początek... Rozwiązaniem (w przypadku Linuksa) może być zainstalowanie łatki na jądro i przekompilowanie iptables (krótki opis na stronie www.knowplace.org) i filtrowanie pakietów po zawartości KaZaA w tych pakietach - chodzi o CONFIG_IP_NF_MATCH_STRING (gorzej jak będzie to np. mail z odpowiedzią na to pytanie - to co właśnie czytasz ;-) dlatego lepiej ograniczać a nie blokować.

Jeżeli chodzi o regułkę blokującą na spatchowanym Linuksie kasię, to można to zrobić mniej więcej tak:
iptables -I FORWARD -p TCP -s nasza_sieć/maska -m string --string 'X-KaZaA' -j DROP

Jeżeli chodzi o blokowanie KaZaA na FreeBSD (i innych systemach uniksowych pewnie też), to możemy użyc po prostu SNORTa (skompilowanego z opcją FLEXRESP) i odpowiednią do niego regułę, jak np. poniższą:
alert tcp $HOME_NET any -> $EXTERNAL_NET any (msg:"KaZaA traffic"; content:"UserAgent\: KazaaClient"; resp: icmp_all,rst_all; flags:A+; classtype:policy-violation; sid:1; rev:5;)

Jeszcze co do KaZaA możemy spróbować przedostatniej (dawniej była to ostatnia ;-) deski ratunku - zanim klient ściągnie listę serwerów (czy co on tam ściąga) należy zablokować IPki 217.116.226.0/24 i port 1214 (na wszelki wypadek) - dostałem sygnały że to rzeczywiście działa na nowych userów kazy. Niestety na starych już nie...

Ostatnią deską ratunku jest po prostu zablokowanie portów tcp/ip 1024:4000 - podobno pomaga i KaZaA się nie łączy (jak się połączy to wyciąć jeszcze do :5000). Nie wiem czy będzie to miało jakieś skutki uboczne - na pewno blokujemy jakiś soft bo są usługi działające na tych portach, ale wtedy można robić wyjątki. No i trzeba pamiętać że porty >1024 to porty klienckie, więc może to minimalnie wpłynąć na transmisje danych (aplikacja będzie musiała przeskoczyć na inny port). Mimo wszystko radzę przycinać, nie blokować - przez to unikniemy też konfliktu z użyszkodnikami.

I tym optymistycznym akcentem... ;-)


Q: Admin straszy mnie odcięciem jeżeli nadal będę z taką prędkością ssał dane z KaZaA... Co zrobić? :-(

A: Cóż, jednym ze sposobów jest samoograniczenie się (tak tak, czasem ludzie o to pytają ;-)
Jeżeli używasz Windows'a 9x lub ME to dobrym rozwiązaniem będzie program IP LCE 9X, który pozwala ograniczyć sobie download i upload do wskazanych wartości.
Dla pozostałych Windowsów może być przydatny programik Shunra Nimbus.


Q: Ile prądu ciągnie serwer? A ile HUB/Switch? Ile mnie to kosztuje?

A: To w dużej mierze zależy od samego serwera i huba/switcha. Może zacznijmy od hubów/switchy - wersje mini są zdecydowanie najpowszechniejsze - i są tanie w utrzymaniu. Np. Surecom EP-808X-R "ciągnie" 5W (maksymalnie), co daje

5W*liczba_sekund_w_dobie=432000Ws=7200Wm=120Wh=0,12kWh - tyle kosztuje doba działania Switcha

Średnio w ciągu miesiąca używamy sprzętu przez 30 dni, co daje 30*0,12=3,6kWh. Licząc 0,32zł za kWh (razem z opłatą przesyłową) dostajemy 1,15zł miesięcznie. Jak widać da się przeżyć ;-) Szczegóły wyliczania ceny można znaleźć na stronie www.zeksa.koszalin.pl.
Jeżeli chodzi o routery czy inny sprzęt, to bierzemy z danych technicznych zużycie energi przez to cudo (w Watach) cuda i podstawiamy do wzoru:

cena = 0,72 * liczba_watów * cena_jednej_kWh

Przykładowo u mnie teraz 1kWh z opłatą przesyłową kosztuje 30gr (przed chwilą patrzyłem na rachunek - STOEN)

Co do serwera, to sprawa jest bardziej skomplikowana - dużo zależy od użytego sprzętu. Np. zupełnie inaczej wygląda zużycie jakiegoś pentiuma z dyskiem twardym (lub bezdyskowy z freesco - z samą flopką) a zupełnie inaczej jakiegoś Athlona z 3 dyskami SCSI i nagrywarką. Dla takiego słabszego sprzętu (jakiś pentiumek z dyskiem, bez monitora) biorąc 15-20zł raczej nie dołożymy do interesu. Dla mocniejszego będzie to więcej więc... jak to zmierzyć? Jest kilka sposobów:

Na koniec jeszcze cytat z grupy trzepak.networking niejakiego RK
"(...) zastanawiało mnie ile to ciągnie prądu - serwer, terminal SDI i switch podłączyłem za oddzielnym licznikiem. Zużycie energii wynosi średnio 1,1KWh na dobę. Jako serwer stoi komputer z P100, 32MB RAM, 850MB HDD, switch Planet 8-portowy."


Q: Mam komputer za natem/maskaradą i chciałbym aby z Internetu był dostęp do mojego eftepa...
     Inna wersja - chcę być serwerem w programie xxx i aby ktoś mógł się z zewnątrz ze mną połączyć

A: W zasadzie zazwyczaj wiąże się to z forwardowaniem (czyli przekazywaniem każdego pakietu danych, który przyszedł na dany port na inną maszynę na inny port) portów z routera na maszynę wewnątrz lanu (posiadającą numer IP z puli prywatnej). Forwardowanie często nazywane jest mapowaniem portu. Standardowo usługa (np. taki serwer ftp) "słucha" na danym porcie (w tym przypadku 21 tcp/ip). Chcąc połączyć się z tym serwerem wysyłamy mu pakiet (z portu powyżej 1024 - tzw. klienckiego) na ten właśnie port (21). Jeżeli chcemy aby trafiło to gdzie indziej, forwardujemy ten port gdzieś indziej (o tym niżej). Na szczęście nie musi to być port akurat 21, może to być praktycznie dowolny port, np. 221, i wtedy chcąc połączyć się z tym portem wpisujemy (dla ftp) ftp://ip.routera.lub.serwera:221/

No dobra, to zajmijmy się samym forwardowaniem portu. Pod Linuksa dostępnę są m.in.

dla jądra 2.2.x
ipmasqadm portfw -a -P tcp -L IP_zewnętrzne NR_PORTU -R IP_wewnętrzne_serwera NR_PORTU

dla jądra 2.4.x
iptables -t nat -A PREROUTING -p tcp --dport NR_PORTU -j DNAT --to IP_wewnętrzne_serwera:NR_PORTU

Osobne programy: redir, rinetd, tcptunel (zapewne wszystkie do znalezienia w www.freshmeat.net lub www.google.com).

Dla Windowsa mamy np. PortMapper, Winroute czy Wingate.

Jeżeli chodzi o sam protokół ftp i co forwardować i dlaczego - znajdziesz tutaj - jest tu także wytłumaczona różnica między pasywnym ftp a ftp aktywnym. Pamiętaj że aby mogła się odbywać transmisja między twoim komputerem (jako serwerem) a klientem i jeżeli z twojego routera nie jest przekierowany port - to twój komputer musi zainicjować połączenie. Dlatego właśnie w przypadku ftp nie zrobisz (przy forwardowanym porcie 21) ftp aktywnego (patrz w/w strona z opisem).

Eftepe został użyty dla przykładu - tak samo można forwardować porty dla innych usług jak np. www (port 80 tcp/ip). Wszystko zależy od charakteru transmisji. Listę podstawowych usług i ich portów znajdziesz w pliku services w swoim systemie.

Jest jeszcze jedna możliwość uzyskania tego co chcemy, zwłaszcza jeżeli nie mamy możliwości forwardowania portów (lub admin nas nie lubi) - jest to tunel. Np. mamy kolegę (z dobrym sercem) który sam ma publiczne IP (albo sobie forwardował port) i chętnie ci troszkę użyczy (musi liczyć się z tym że zajmiesz mu część pasma - pakiety do ciebie będą leciały przez jego komputer). O tunelu być może napiszę w przyszłości :-) a narazie spokojnie znajdziesz informacje na groups.google.com.pl dla swojego systemu.


Q: Jak mogę zbootować stację bezdyskową z sieci?

A: Bez wdawania się w szczegóły garść linków jak to zrobić za pomocą bootromu na karcie sieciowej czy też przy pomocy specjalnej dyskietki/płytki/...

Wykorzystując wynalazek INTELa - czyli PXE, na stronie www.kano.org

http://etherboot.sourceforge.net
http://www.rom-o-matic.net (bardzo przyjemne narzędzie do bootowania z sieci przy pomocy jakiegoś nośnika)


Q: Jak mogę zdalnie zarządzać komputerem z systemem Windows?

A: Przede wszystkim - dlaczego w pytaniu uwzględniam tylko system Windows? Bo z innymi systemami (Solaris, Linuks, FreeBSD, OpenBSD...) raczej nie ma takich problemów - po odpowiedniej konfiguracji używając choćby openssh możemy zalogować się na taką maszynę i pracować na niej jak na lokalnej.

Jeżeli chodzi o produkty firmy M$, to sprawa jest troszkę trudniejsza, ale nie do nieprzeskoczenia. Wystarczy odpowiedni program do obsługi tego co chcemy - możemy posłużyć się softem darmowym jak RealVNC (zarządzać można spod różnych platform) czy TightVNC (rozszerzona wersja RealVNC) lub też softem komercyjnym takim jak Remote Administrator czy PCAnyWhere.


Q: Nie chcę być widocznym w otoczeniu sieciowym - howto?

A: Cóż, najprościej tego dokonać instalując firewall'a i blokując w nim pakiety przychodzące na porty 137:139 445 tcp/udp lub (jeżeli wersja Windowsa na to pozwala) wyłączyć tą usługę.

Ewentualnie, zamiast leczyć objawy, możesz zacząć od wyeliminowania przyczyny: usuń z zakładki 'właściwości sieci' (czy jakoś tak) pozycję z komputerkiem 'Udostępnianie zasobów w sieci MS cośtam'. Ma to tą zaletę, że zostawiając sobie 'Klienta sieci MS' (i nie włączając firewalla) dalej widzisz wszystkie komputery w otoczeniu sieciowym i możesz z niego korzystać, będąc jednocześnie 'niewidocznym' dla innych.


Q: Chciałbym mieć jakiś program do komunikacji głosowej w LANie lub Internecie...

A: Proste :-) Zakładam że twoim systemem jest Windows (jeżeli nie - też czytaj dalej ;-) a pod to jest całkiem spora liczba programów tego typu. Podam te które polecali grupowicze - należy po prostu pościągać kilka i potestować, po czym wybrać ten który najbardziej spełnia wasze oczekiwania.

Team Speak - jest wersja tak pod Windows jak i pod Linuksa. Pod oba systemy jest tak klient jak i serwer.
Roger Wilco - nie jestem pewien czy darmowy bo nie chciało mi się wczytywać ;-)
Netmeeting - program znanego producenta MałoMiętkiego, można powiedzieć że darmowy o ile już ktoś się wybulił na jedyny słuszny system...
Buddy Phone - pozwala także dzwonić na telefony sieci telekomunikacyjnych, oczywiście nie za darmo :-)
Paltalk - darmowy, nic więcej nie wiem ;-)
GatherTalk - pozwala także transmitować obraz.
Yahoo Messenger - podobnież działa nieźle na słabszych łączach, dostępne przeróżne rozszerzenia (także obraz).

Jest jeszcze rozwiązanie, którego celem jest stworzenie przenośnego standardu rozmów głosowych. Poczytasz o tym na stronie domowej projektu OpenH323 - pozwala on na implementację głosowych rozmów nawet w takim programie jak ekg (tekstowy klient GG pod Linuksa).





5. Typowe problemy i ich rozwiązywanie


Q: Moja sieć strasznie wolno chodzi - o co może chodzić?

A: Wiem, że się pewnie skrzywisz - ale prawda jest taka, że w 95% przypadków chodzi o zły kabel. Czasem skutkuje to tym że prędkości są asymetryczne (w jedną stronę szybciej niż w drugą) a czasem ogólnie sieć chodzi kiepsko. Zazwyczaj dotyka to sieci na 100Mbps.

No więc dla świętego spokoju - sprawdź kolejność kabelków we wtyczce.

Poza tym - sprawdzić czy odległości są zgodne z normą. Jeżeli kabel jest ekranowany - upewnij się, że poprawnie wykonałeś uziemienie tegoż ekranu. Jeżeli wszystko zawiedzie - pisz na grupę :-) I najlepiej od razu zaznacz że sprawdziłeś kolejność kabla - o to zapewne zostaniesz zapytany w pierwszej kolejności.


Q: Windziane otoczenie chodzi kulawo, lub nie chodzi wcale - co zepsuł Bill?

A: Dobre pytanie :-) No więc pan Bramski zepsuł... otoczenie - szok co? ;-)
Po pierwsze - wywal wszelkie niepotrzebne protokoły sieciowe - jeżeli nie używasz IPX/SPX - wywal. Wywal Netbeui i używaj otoczenia poprzez tcp/ip (upewnij się że ta opcja jest włączona). Jeżeli musisz używać kilku protokołów, we właściwościach protokołu TCP/IP zaznacz aby używał tegoż protokołu jako domyślnego. Możesz jeszcze przy reszcie protokołów odznaczyć w powiązaniach fistaszki do wszystkiego co tam znajdziesz (może sie pluć, że sieć niekompletna czy coś z tym stylu, ale tak ma być i Ty wiesz co robisz w przeciwieństwie do programu, który sugeruje co innego). Jeżeli to nie pomoże - możesz posiłkować się plikiem hosts (różnie usytuowanym w zależności od systemu, zazwyczaj występuje w Windowsie plik hosts.sam - trzeba zmienić nazwę na hosts i przeedytować zgodnie z wskazówkami zawartymi w tym pliku). A jeżeli wszystko zawiedzie - spróbuj zainstalować na którymś komputerze (najlepiej jakimś włączonym na stałe) serwer WINS.

WINS serwer według mojej wiedzy chodzi pod Windows NT i wersjami server Windows 2000.
W lepszej sytuacji są sieci posiadające u siebie jakiegoś Linuksa - można tam zainstalować sambę i uruchomić w niej "wins support", a potem tylko ustawić klientów tak, aby z tego serwera wins korzystali.


Q: Mam neostradę i w sumie prawie wszystko działa, ale niektóre strony się nie ładują, poczta dziwnie działa...

A: Zapewne jest to problem zbyt wysokiego MTU (Maximal Transfer Unit) - musisz poeksperymentować. Jeżeli chodzi o Windows to MTU można ustawić w rejestrze, albo wspomagać się programem drtcp - opis użycia i link znajdziesz tutaj. Dla linuksa trochę szczegółów doczytasz na tej stronie.


Q: Mój switch ciągle się zawiesza, co jest?

A: Niestety w najtańszych switchach (zazwyczaj z zewnętrznymi zasilaczami) występuje ten problem - jest on wynikiem kiepskiej jakości tych zasilaczy (i/lub kiepskiej jakości linii zasilającej). Zazwyczaj pomaga wymiana tego zasilacza na lepszy. Jaki? Ano taki który będzie miał większą wydajność prądową. Z tego co mi wiadomo najczęściej pomaga już jakiś zasilacz 1,5A, ale spotkałem się z przypadkami gdzie pomógł dopiero zasilacz 3A.


Q: Mam łącze X, które wg FAQ jest fullduplex, a mimo to nie mogę wysycić łącza jednocześnie w obie strony.
Przy dużym uploadzie drastycznie spada download, dlaczego?

A: Większość transmisji w Internecie odbywa się za pomocą protokołu tcp.
Ma on taką właściwość, że na każdy pakiet (lub grupę pakietów), które ściągasz, musisz wysłać drugiej stronie pakiety potwierdzenia (tzw. ACK). Jeżeli coś z dużą prędkością ściągasz i chcesz jednocześnie coś z dużą prędkością wysyłać, to może się okazać, że zapychając upload ograniczasz jednocześnie wysyłanie pakietów potwierdzających dla downloadu, co kończy się tym, że transfer transmisji spada.
Najprostszym wyjściem w takiej sytuacji jest priorytetowanie pakietów i przepuszczanie jako pierwszych właśnie pakiety potwierdzające (z ustawioną flagą ACK).
Jeżeli chcesz po prostu przetestować, czy rzeczywiście masz odpowiednie pasmo w góre i w dół, to użyj czegoś innego niż transfery z wykorzystaniem tcp (np. flood ping lub jakaś transmisja po udp - czyli protokoły które nie oczekują potwierdzeń).


Q: Mam łącze 1Mbps Internet DSL od TePsy, które niestety często ma czkawkę, co się dzieje?

A: Rozwiązanie tego problemu podał Robert Kalinowski na grupie pl.internet.polip, a które po prostu polega na podniesieniu (użyciu, przypisaniu) wszystkich pięciu IPków jakie dostajemy od TePsy, gdyż przestoje spowodowane są właśnie przez odebranie przez modem pakietu kierowanego do nieistniejącego IPka (piękny DoS można robić... miejmy nadzieję że TP SA upora się z problemem).


Q: Jakiś gość ciągle atakuje mnie DDoSem - chcę zgłosić go do abuse, ale mam problem ze znalezieniem odpowiedniego adresu.. gdzie pisać?

A: Dobrym adresatem tego pytania jest link CERTu.


Q: Coś nie działa mi łącze do internetu... o co biega?

A: Ten dział jest w budowie, i pewnie nigdy nie zostanie zamknięty...
Przed zadaniem pytania na grupie, powinieneś przeprowadzić szereg testów, które pomogą być może ustalić przyczynę awarii. Odpowiedz na poniższe pytania (tylko szczerze i bez oszukiwania! ;-)

1. Czy działa ping do IP 82.210.136.247 (polecenie ping 82.210.136.247)
2. Czy działa ping na nazwę sierp.net (polecenie ping sierp.net)
3. Czy działa polecenie telnet 82.210.136.247 80
4. Czy działa polecenie telnet 82.210.136.247 21

Teraz spróbuj przeanalizować odpowiedzi:
Jeżeli na 1 odpowiedź jest TAK, a na pytanie 2 NIE, to masz problemy z DNSem - sprawdź ustawienia, zmień DNS, zgloś to do administratora sieci - nie działa resolvowanie nazw DNSowych na numery IP.
Jeżeli na 1 i 2 masz TAK, a 3 i 4 NIE, to prawdopodobnie jest coś nie tak z maskaradą bądź konfiguracją maskarady u Ciebie w sieci (ewentualnie źle skonfigurowany firewall u Ciebie lub na routerze). Jeżeli jednak na trzecie masz TAK, a na czwarte nie - może to oznaczać błędną konfiguracje serwera proxy, który być może przepuszcza ruch www, natomiast nie przepuszcza innego ruchu.
Jeżeli wszystkie pytania to NIE - to naprawde masz problem ;-) Pisz na grupę opisując, że powyższe testy zostały dokonane i informując o wynikach

To dopiero pierwsza próba przelania na vi tego, co zazwyczaj pada w pierwszych odpowiedziach, chętnie zapoznam się z sugestiami kolejnych prostych testów.