Adres IP, adres sieci i broadcast
Sieć komputerowa jest jak żywy organizm, nieustannie działa. Użytkownik może mieć przeświadczenie, że kiedy z niej nie korzysta to jest ona w „spoczynku”. A nie do końca jest to prawda. By sieć działała prawidłowo tworzące ją urządzenia cały czas muszą się komunikować i wymieniać się informacjami – routery podtrzymują relacje sąsiedztwa, a także wymieniają się swoimi tablicami routingu, switche budują tablice adresów MAC, aplikacje włączone na naszych komputerach a korzystające z sieci pracują w tle wysyłając swoje dane itd. W artykule zawarłem garść podstawowych informacji niezbędnych do zrozumienia tych procesów, jeśli chcesz wiedzieć co tak naprawdę w sieci siedzi to zapraszam do dalszej lektury.
Na początek zaczniemy od samych podstaw i wytłumaczę czym jest adres IP i jaki jest jego związek z maską sieci.
Każdy, kto ręcznie przypisywał adres karty sieciowej wie, że te dwa adresy są niezbędne, aby poprawnie skonfigurować interfejs sieciowy.
„Adres IP (ang. IP address) – liczbowy identyfikator nadawany interfejsowi sieciowemu, grupie interfejsów (broadcast, multicast), bądź całej sieci komputerowej w protokole IP, służący identyfikacji elementów sieci w warstwie trzeciej modelu OSI – w obrębie sieci lokalnej oraz poza nią (tzw. adres publiczny) … W najpopularniejszej wersji czwartej (IPv4) jest zapisywany zwykle w podziale na oktety w systemie dziesiętnym (oddzielane kropkami) lub rzadziej szesnastkowym bądź dwójkowym (oddzielane dwukropkami bądź spacjami).” – taką definicję adresu IP podaje Wikipedia (źródło – http://pl.wikipedia.org/wiki/Adres_IP)
Powiem, że jak dla mnie osobie mającej na co dzień do czynienia z sieciami komputerowymi dosyć klarowna i zrozumiała, ale dla osoby, która wchodzi w świat sieciowy i jest na początku tej drogi z pewnością wyda się zagmatwana. Po cóż to takiego jest ten broadcast, multicast czy warstwa trzecia modelu OSI? A więc od początku.
Adres IPv4 (wersji 4) jest 32-bitowym adresem przypisywanym karcie sieciowej bądź interfejsowi urządzenia sieciowego jakim może być np. router celem identyfikacji tego urządzenia/interfejsu w sieci komputerowej i to bez znaczenia czy jest to sieć o zasięgu lokalny, krajowym czy Internet. Poprzez przypisanie adresu IP komputer będzie mógł komunikować się i wymieniać informacje z innymi urządzeniami.
Udoskonaleniem protokołu IPv4 jest IPv6. Tu już mówimy o adresie 128-bitowym. Na razie wystarczy, że powiem, iż głównym celem wprowadzenia protokołu IPv6 było zwiększenie dostępnej liczby adresów jakie możemy przypisać hostom.
Wracając do IPv4, przyjrzyjmy się przykładowemu adresowi: 172.163.1.161 Taki zapis jest Ci na pewno znany, rodzi się pytanie, gdyż wspominałem wcześniej, że jest to adres 32-bitowy – Gdzie do diabła są te 32 bity? Powyższy adres jest zapisany w notacji dziesiętnej, notabene dla naszej wygody. A co się stanie, gdy ten sam adres zapiszemy w systemie dwójkowym (binarnym)?
Spróbujmy zatem adres 172.163.1.161 przedstawić w formie binarnej.
Aby konwersja przebiegła sprawniej zaczniemy od narysowania:
Liczba, którą zamieniamy na system binarny to 172. A więc pierwszym krokiem jest sprawdzenie czy liczba 128 mieści się w 172. Odpowiedź jest twierdząca – tak mieści się jeden raz, dlatego pod 128 wpisujemy jedynkę i wykonujemy odejmowanie 172-128=44. Otrzymujemy.
Teraz sprawdzamy czy 64 mieści się w 44. Odpowiedź – nie. Więc pod 64 wpisujemy 0. Idąc dalej sprawdzamy czy może 32 mieści się w 44. Tak, więc wpisujemy pod 32 liczbę 1 i tak jak w pierwszym przypadku wykonujemy odejmowanie 44-32=12.
Pozostało 12. Więc kolejne sprawdzenie – czy 16 mieści się w 12? Nie, więc pod 16 wpisujemy 0. Czy 8 mieści się w 12? Tak, więc pod 8 wpisujemy 1 i wykonujemy odejmowanie 12-8=4. Otrzymujemy:
Dalej idąc tym tokiem sprawdzamy czy 4 mieści się w 4? Tak, więc pod 4 wpisujemy 1 i wykonujemy odejmowanie 4-4=0. Dotarliśmy do 0 więc w pozostały miejscach tj. pod liczbą 2 i 1 dopełniamy 0. W rezultacie otrzymujemy:
Dotarliśmy do końca, udało się nam liczbę 172 przedstawić w formie binarnej – 10101100. W ten oto prosty sposób zamienisz każdą liczbę z systemu dziesiętnego na dwójkowy. Pamiętaj tylko, że w systemie binarnym do zapisu liczb używa się tylko 1 i 0, więc jeżeli podczas zamiany jakaś liczba zmieści Ci się dwukrotnie w innej to należy poszerzyć naszą matrycę o kolejne potęgi 2, czyli przed 128 dopisujemy 256, jeśli nadal by nie wystarczyło to dalej konsekwentnie przed 256 wpisujemy 512 itd.
Umiemy już przekonwertować liczbę z systemu dziesiętnego na dwójkowy, to teraz sytuacja odwrotna – przejście z systemu binarnego na dziesiętny. Zamiana jest bardzo prosta, dalej korzystamy z matrycy a nasze działania tak naprawdę sprowadzają się do mnożenia i dodawania. Naszą liczbę w systemie binarnym zapisujemy jak na rysunku poniżej i wykonujemy mnożenie: 1×0=0; 2×0=0; 4×1=4; 8×1=8; 16×0=0; 32×1=1;64×0=0; 128×1=128 a następnie dodajemy: 4+8+32+128=172.
Analogicznie postępujemy z 163, 1 i 161, i tak zamienione liczby zapisujemy jak na rysunku poniżej, jeżeli liczba ma mniej niż 8 znaków to dopisujemy z przodu zera – jak np. w przypadku 1. Ostatecznie powinniśmy uzyskać:
Teraz jak na dłoni widać, że adres IPv4 jest adresem 32-bitowym zbudowanym z 4 oktetów po 8-bitów. Jeszcze jeden wniosek powinniśmy wyciągnąć z powyższego rysunku – maksymalną liczbę dziesiętną jest 255, ponieważ 255 w zapisie binarnym to 11111111.
OK wiemy już czym jest adres IP, więc idziemy dalej, teraz spróbujemy sobie wyjaśnić związek adresu IP z maską sieci.
Ogólnie maska sieci wyznacza granice bitów przeznaczonych na sieć i na liczbę hostów a także jest niezbędna do wyznaczenia adresu sieci i broadcastu (ale o tym za chwilę).
Przeanalizujmy poniższy rysunek, mamy adres 192.168.0.10 i maskę 255.255.255.0. Adresy te zostały zapisane w systemie binarnym.
To co zostało zaznaczone na żółto jest adresem sieci (tam, gdzie w masce 1), pozostała część przynależna jest hostom. Tak więc adres sieci wynosi: 192.168.0.0, natomiast w tej danej sieci dostępnych jest 256 adresów IP. Taka liczba, ponieważ, zostało nam wolnych 8-bitów, które mogą przybierać wartość 1 albo 0 co daje możliwych kombinacji 2^8, czyli 256 możliwych adresów IP (od 192.168.0.0 do 192.168.0.255), co nie oznacza, że wszystkie możemy wykorzystać. Musimy pamiętać, że 2 adresy są zabierane, jeden jest przydzielany adresowi sieci (pierwszy z puli) czyli 192.168.0.0 a drugi (ostatni z puli) stanowi broadcast w naszym przypadku 192.168.0.255. Więcej o wyznaczaniu tych adresów przeczytasz tu – https://cowsiecisiedzi.pl/jak-wyznaczyc-broadcast-adres-sieci-i-liczbe-hostow/
Maska może być zapisywana dwojako, podany przeze mnie zapis 192.168.0.10 i maska 255.255.255.0. jest tożsame z 192.168.0.10/24. Dlaczego 24?, bo w masce występują 24 jedynki.
Maska w systemie binarnym zawsze stanowi ciąg jedynek, w środku znajdować nie może się zero, dlatego też maskę nie można definiować dowolnie – pamiętajmy, że tam, gdzie 1 to adres sieci a tam, gdzie 0 to hosty. Poniżej w tabeli dostępne zapisy masek i odpowiadająca im forma skrócona.
CIDR | Maska | CIDR | Maska |
/1 | 128.0.0.0 | /16 | 255.255.0.0 |
/2 | 192.0.0.0 | /17 | 255.255.128.0 |
/3 | 224.0.0.0 | /18 | 255.255.192.0 |
/4 | 240.0.0.0 | /19 | 255.255.224.0 |
/5 | 248.0.0.0 | /20 | 255.255.240.0 |
/6 | 252.0.0.0 | /21 | 255.255.248.0 |
/7 | 254.0.0.0 | /22 | 255.255.252.0 |
/8 | 255.0.0.0 | /23 | 255.255.254.0 |
/9 | 255.128.0.0 | /24 | 255.255.255.0 |
/10 | 255.192.0.0 | /25 | 255.255.255.128 |
/11 | 255.224.0.0 | /26 | 255.255.255.192 |
/12 | 255.240.0.0 | /27 | 255.255.255.224 |
/13 | 255.248.0.0 | /28 | 255.255.255.240 |
/14 | 255.252.0.0 | /29 | 255.255.255.248 |
/15 | 255.254.0.0 | /30 | 255.255.255.252 |
Wiemy już, że maska określa liczbę dostępnych adresów w danej sieci, wróć do rysunku powyżej i zauważ, że przesuwając żółty obszar w lewo zmniejszasz maskę a jednocześnie poszerzasz liczbę bitów przypisanych hostom, a tym samym zwiększa się liczba dostępnych adresów.
Pojawiły się dwa nowe terminy a mianowicie adres sieci i broadcast, a więc wypadałoby je wytłumaczyć.
Adres sieci został już pośrednio opisany, ale zastanówmy się nad takim pytaniem – Po co w ogóle wprowadzono taki typ adresu? Najlepiej będzie, jak to pokażę, spójrz na rysunek poniżej.
No niestety tak to jest, że tłumacząc to pojęcie znów pojawiają się nowe, ale nie zrażaj się, powoli wytłumaczymy wszystko. Na rysunku mamy router, który ma połączenie z sieciami 10.0.0.0/8, 172.16.0.0/16 oraz 192.168.0.0/24. Skąd to wiadomo? Wystarczy zajrzeć w tablicę routingu routera. Zadaniem tej tablicy jest dostarczenie informacji urządzeniu z jakimi sieciami ma łączność. Jak widać w tablicy znajdują są trzy wpisy: adres sieci plus maska i powiązany z adresem interfejs routera (w tablicy routingu mogą być zawarte także inne informacje np. typ routingu, adres następnego skoku czy metryka, ale te informacje na tym etapie są dla nas nie istotne). Router otrzymując pakiet przeznaczony do komputera o adresie 192.168.0.10 wie, że ma go wysłać do sieci 192.168.0.0/24 (poprzez interfejs FastEthernet0/0). Porównując adres IP i maskę (tak jak zrobiliśmy to przed chwilą) wyznacza adres sieci. Aby odnaleźć drogę do wyznaczonej sieci musi jedynie przeszukać tablicę, w której znajdują się 3 wpisy.
Co by się stało, gdyby zabrakło adresu sieci? Aby router mógł przekazywać pakiety musiałby posiadać informację o adresach podłączonych do niego hostów. Informacja taka oczywiście przechowywana by była w tablicy routingu. Idąc dalej tą drogą dojdziemy do wniosku, że w tablicy tej znalazłoby się 15 par wpisów adres IP – interfejs. 15, ponieważ tyle znajduje się komputerów w naszej sieci, a oczywiście każdy nowy komputer powodowałby dodanie kolejnego wpisu do tablicy. Jak widać takie rozwiązanie powoduje znaczący wzrost tablicy, wydłużając tym samym czas na jej przeszukanie.
Kolejny wzrost tablicy routingu nastąpiłby by po podłączeniu kolejnego routera, aby poprawnie przekazać pakiet do adresata router musiałby wiedzieć z jakimi hostami łączy się nowo podłączony router (i na odwrót). W obu routerach dodane zostaną nowe wpisy. Tak to już jest, że aby sieć działała i była zbieżna wszystkie routery muszą znać drogę do wszystkich hostów, tak więc każdy kolejny router powiększa tablicę routingu wszystkich pozostałych (routery między sobą wymieniają się tablicami, dodając kolejne wpisy).
Takie rozwiązanie komplikowałoby również samą konfigurację routera. Wykonanie wszystkich wpisów przy wykorzystaniu np. routingu statycznego (takim, gdzie sami decydujemy o drodze przesyłania pakietów) byłaby ogromna, zaś przy routingu dynamicznym (routery same budują swoje tablice routingu i same wybierają jaką drogą prześlą pakiet – odpowiedzialne protokoły np. RIP, EIGRP, OSPF) wielkość przesyłanych aktualizacji byłaby większa.
W małych sieciach, gdzie występuje kilkadziesiąt komputerów rozwiązanie te by byłoby jeszcze akceptowalne, ale w sieciach WAN gdzie router brzegowy obsługuje tysiące hostów już nie. Myślę, że ten przykład uzmysławia Ci rolę adresu sieci. Adres sieci agreguje nam adresy IP hostów do jednego wpisu tak aby ograniczyć liczbę pozycji w tablicy routingu.
Adres sieci mamy z głowy pozostał broadcast. Pozwól, że znów posłużę się rysunkiem, a więc spójrz poniżej.
Adres broadcast jest szczególny rodzajem adresu, jest wykorzystywany przez wiele protokołów m.in. przez DHCP (protokół umożliwiający samo konfigurację maszyny – przekazanie komputerowi adresacji sieciowej). Taką sytuację mamy powyżej, nowy host komputer PC4 zostaje podłączony do istniejącej sieci, w której dystrybucją adresów zajmuje się Server-PT (to jego zadaniem jest obsługa protokołu DHCP). Na początku host PC4 nie posiada adresu IP, po podłączeniu, wysyła on specjalny pakiet w poszukiwaniu serwera DHCP, pakiet ten musi trafić do wszystkich urządzeń znajdujących się w sieci, dlatego wysyła go na broadcast. I to jest cała istota broadcastu, jest to transmisja, która jest kierowana to wszystkich urządzeń w sieci.
Pakiet odszukujący serwer DHCP wyobraź sobie w ten sposób – „witam jestem nowy poszukuję serwera DHCP, czy ty nim jesteś”. Jak widać na tak postawione pytanie odpowiada tylko Server-PT, na reszcie urządzeń pakiet ten zostaje odrzucony. Po odnalezieniu serwera następuje kolejna wymiana informacji czego efektem jest przyznanie komputerowi PC4 potrzebnych adresów IP niezbędnych do komunikacji z innymi urządzeniami w sieci.
Jak już jesteśmy przy transmisji typu broadcast to dobry moment by wytłumaczyć sobie transmisję typu unicast i multicast.
A więc unicast to rodzaj transmisji, typu jeden do jednego, istnieje tylko jeden nadawca i tylko jeden odbiorca. Wracając do przykładu powyżej – transmisja między Serverem-PT a hostem PC4 po zakończeniu broadcastu (proces przypisywania adresu IP).
Multicast jak się pewnie domyślasz to typ transmisji jeden do wielu, czyli ta sama informacja trafia do wielu hostów.
Aby dokładniej wytłumaczyć różnicę pomiędzy transmisją unicast a multicast posłużę się o to takim przykładem. Nieraz muszę postawić system od nowa, przypuśćmy, że problem wystąpił na 4 komputerach (komputery posiadają identyczne podzespoły). Mam przygotowany obraz systemu, wraz z zainstalowanymi aktualizacjami i wszystkimi niezbędnymi aplikacjami i sterownikami, tak że po instalacji komputer od razu jest gotowy do działania, nie muszę wykonywać żadnych dodatkowych czynności. Obraz jest dystrybuowany za pomocą sieci z wykorzystaniem Windows Server z zainstalowaną rolą WDS (Windows Deployment Services). Narzędzie to do dystrybucji plików wykorzystuje m.in. transmisję multicast Dzięki temu dane mogą zostać przesłane jednocześnie do wszystkich czterech 4 komputerów. W efekcie proces instalacji trwa znacznie krócej niż jak bym wykorzystał unicast. Przy transmisji unicast te same dane wysyłane byłby czterokrotnie, do każdego komputera z osobna.
Zanim pójdziemy dalej niezbędne jest jeszcze dopowiedzenie pewnych kwestii związanych z protokołem IPv4 i samego wykorzystania adresów IP.
Adresacje IP dzielimy na klasową i bezklasową. Wszystko zależy od zastosowanych adresów IP i dobranych masek podsieci. Kiedy mamy do czynienia z adresacją klasową jesteśmy skazani na ściśle określone adresy IP i maski w przypadku notacji bezklasowej, dowolnym adresom IP możemy przydzielić dowolne maski. Poniżej w tabeli rozkład adresów i przynależność do danej klasy wraz z przydzielona maską domyślną.
Klasa adresu | Zakres adresów | I oktet | II oktet | III oktet | IV oktet | Liczba dostępnych adresów |
A | 0.0.0.0 – 127.255.255.255 127.x.x.x – zakres zarezerwowany do celów diagnostycznych | Część sieci | Część hosta | Część hosta | Część hosta | 16777216 |
255 | 0 | 0 | 0 | |||
B | 128.0.0.0 – 191.255.255.255 | Część sieci | Część sieci | Część hosta | Część hosta | 65536 |
255 | 255 | 0 | 0 | |||
C | 192.0.0.0 – 223.255.255.255 | Część sieci | Część sieci | Część sieci | Część hosta | 256 |
255 | 255 | 255 | 0 | |||
D | 224.0.0.0 – 239.255.255.255 | na potrzeby rozsyłania grupowego | – | |||
E | 240.0.0.0 – 255.255.255.255 | na potrzeby badawcze | – |
Adresy klasy A wykorzystywane w dużych sieciach. Sieci zaczynające się od 0 i 127 są adresami zarezerwowanymi, np. adres 0.0.0.0 jest używany do określenia bramy domyślnej natomiast adresy typu 127.x.x.x są wykorzystywane jako loopback (pętla zwrotna, localhost), komunikacja np. z 127.0.0.1 oznacza wymianę informacji wewnątrz hosta tj. wysyłanie pakietu do samego siebie w celu np. testu stosu TCP/IP . Maska standardowa dla tej klasy to 255.0.0.0.
Adresy klasy B przeznaczone są do sieci średniej wielkości. Maska standardowa dla tej klasy to 255.255.0.0. W każdej sieci należącej do tej klasy można wyróżnić 65536 adresów.
Adresy klasy C przypisane małym siecią, maksymalna liczba adresów dla klasy to 256 adresów. Maska standardowa dla tej klasy to 255.255.255.0.
Klasa D została zarezerwowana na potrzeby transmisji multicast (rozsyłania grupowego). Pamiętasz podany przeze mnie przykład odnośnie instalacji systemu na wielu komputerach, do przeprowadzenia procesu zostały wykorzystane właśnie adresy z tej puli. Pula tych adresów jest również wykorzystywana przez protokoły routingu np. OSPF.
Klasa E została zarezerwowana na potrzeby badawcze i adresy tej klasy zostały wyłączone z publicznego dostępu.
Dano nam możliwość dowolnego wykorzystywania adresów IP, dlatego stworzono specjalne prywatne pule adresowe w poszczególnych klasach adresów IP. Adresy prywatne, to adresy wydzielone w każdej klasie adresów IP, które nie są przydzielane hostom w Internecie (nie routowane). Adresy takie najczęściej stosuje się w sieciach prywatnych, to za ich pomocą możemy budować nasze sieci. W praktyce wygląda to tak że router jest granicą pomiędzy siecią lokalną (LAN, sieć wewnętrzna, prywatna) a siecią zewnętrzną (WAN, sieć publiczna).
Adresy prywatne wydzielone z każdej klasy IP to:
- w klasie A: zakres od 10.0.0.0 do 10.255.255.255, maska domyślna 255.0.0.0 (10.0.0.0/8)
- w klasie B: zakres od 172.16.0.0 do 172.31.255.255, maska domyślna 255.255.0.0 (172.16.0.0/16)
- w klasie C: zakres od 192.168.0.0 do 192.168.255.255 maska domyślna 255.255.255.0 (192.168.0.0/24)
Aby jednak mogła być zapewniona komunikacja na routerze musi zostać uruchomiony mechanizm NAT (translacja adresów). W przykładzie poniżej wszystkie 5 komputerów z zewnątrz będzie widocznych pod jednym adresem publicznym. NAT będzie pilnował komunikacji i dbało o to, aby pakiety były przekazywane do odpowiednich hostów.
Adresacja oparta o klasowość (m.in. z powodu ogromnego marnowania adresów IP) została wyparta przez adresację bezklasową.
Marnotrawstwo adresów IP spowodowane było tym, że danej organizacji był przydzielany cały adres sieci klasowej – np. przydzielenie klasy 44.0.0.0/8 wraz z całą pulą adresów przynależną do niej. Wykorzystanie takiej przestrzeni adresowej, która oferuje 16777216 adresów jest wręcz nieprawdopodobne, ale nie niemożliwe (istnieją do tej pory firmy, które mają przyznaną taką pulę adresów – jeśli nie wierzysz sprawdź sam – https://www.iana.org/assignments/ipv4-address-space/ipv4-address-space.xml ) Jednak w wielu przypadkach takie podejście sprawiało, że duża część adresów IP nigdy niebyła wykorzystana. Na początku istnienia Internetu nikt się tym nie przejmował problem stał się palący, kiedy w latach 90 XX w. nastąpił gwałtowny boom na Internet, dlatego wprowadzono takie mechanizmy jak: VLSM, CIDR oraz translacji adresów sieciowych NAT wraz z sieciami prywatnymi, aby temu przeciwdziałać. Krótki ich opis znajdziesz poniżej.
CIDR – adresu sieci nie ustala się już na podstawie klasy adresu, dlatego też np. adres klasy A może zostać powiązany z maskę z klasy C. Maska definiuje nam adres sieci i liczbę hostów.
VLSM – podział sieci na kolejne podsieci. Podsieci mogą być dzielone na kolejne i tak dalej. Sposób dzielenia na kolejne podsieci został opisany tu – https://cowsiecisiedzi.pl/slow-kilka-o-adresacji-sieci/
NAT i adresacja prywatna – jak już zostało wspomniane, NAT przekształca pakiety z sieci używającej adresów prywatnych (wewnętrznych) na adresy publiczne (zewnętrzne) dostępne w sieci Internet i na odwrót.
NAT wraz z innymi metodami znacznie przyczynił się do spowolnienia tempa wykorzystania adresów IPv4. Ale trzeba pamiętać, że nie ma nic za darmo, bo decydując się na coś, z czegoś trzeba zrezygnować lub pogodzić się z ograniczeniami. Nie inaczej jest w przypadku NATa.
- przechowywanie stanu połączenia i zmniejszenie wydajności sieci – NAT musi tworzyć, przechowywać oraz pamiętać stany połączeń, aby zapewnić ciągłość komunikacji,
- kolizja przestrzeni adresowej – występująca, gdy na obu końcach realizowanego połączenia między hostami występuje ta sama prywatna przestrzeń adresowa (rozwiązanie podwójny NAT lub przenumerowanie, ale zwiększa to złożoność systemu),
- problem z współdzieleniem tych samych numerów portów, ale dla różnych adresów IP – np. nie można dokonać przekierowania portu 3389 (Pulpit zdalny) do dwóch różnych komputerów lub sytuacja odwrotna dwa serwery WWW działające za NAT-em na porcie 80 nie mogą używać tego samego adresu zewnętrznego,
- problemy z szyfrowaniem – NAT nie zapewnia nam integralności nagłówka, jest to szczególnie kłopotliwe, gdy transmisja między hostem a serwerem jest szyfrowana np. za pomocą protokołu IPSec, ze względu na dokonaną modyfikację przez NAT źródłowego adresu IPSec zgłasza błąd integralności nagłówka.
Powoli kończymy, ale zanim to nastąpi krótko jeszcze czym jest brama.
Brama sieciowa (ang. gateway) jest specjalnym adresem, który podajemy w konfiguracji karty sieciowej dzięki bramie możliwa jest komunikacja z innymi sieciami (najczęściej z Internetem). W sieciach domyślna brama (sieciowa) jest najczęściej tożsama z interfejsem najbliższego routera, do którego jest podłączona sieć. Oczywiście brama musi się znajdować w obrębie adresacji danej sieci.
Adres bramy nie jest obowiązkowym polem, może pozostać puste, ale wiązać będzie się to z brakiem możliwości wyjścia poza podsieć – komunikacja będzie mogła być prowadzona jedynie w obrębie tej samej sieci lokalnej.
Na rysunku powyżej wszystkie komputery znajdują się w sieci 10.0.0.0/24 i mają przypisane adresy należące do tej sieci, a bramą dla nich jest interfejs routera fa0/0 o adresie 10.0.0.1. Adres bramy jest wykorzystywany, gdyby dany komputer musi nawiązać połączenie z innym, ale znajdującym się poza siecią (np. gdy korzystamy z zasobów sieci Internet).