O ile rozumiem, „adres sieciowy” jako adres specjalny jest artefaktem z klasowych sieci IP z przeszłości. Dziś używamy bezklasowego routingu między domenami ( CIDR ) w Internecie, który nie ma pojęcia adresu sieciowego (jeśli spojrzysz na RFC 4632 połączony powyżej, zobaczysz, że zawiera 256 możliwych adresów IP na starsze wersje Blok „C”, np. Brak zarezerwowanych adresów dla adresu sieciowego lub rozgłoszeniowego (chociaż rozgłoszenia są zdefiniowane jako niezbędne w innych RFC).
To powiedziawszy, nadal nie powinieneś przypisywać adresu sieciowego do żadnego konkretnego hosta w sieci: Adres sieciowy jest niezbędny do routingu. Ta koncepcja jest szeroko stosowana w RFC ( RFC 1812 ). Wystarczy spojrzeć na tablice routingu ( route
polecenie), zobaczysz, w jaki sposób używany jest adres Twojej sieci lokalnej do oddzielenia lokalnego ruchu sieciowego od tego, co musi przechodzić przez router. Co jeśli ten adres sieci lokalnej został przypisany do jakiegoś hosta?
Co gorsza: lepiej nie przypisywać adresów IP kończących się na zero, nawet jeśli ten adres nie jest adresem sieciowym. Np. Jeśli twoja sieć to 10.10.0.0/255.255.0.0, adres IP 10.10.5.0 nie jest twoim adresem sieciowym, ale lepiej nie przypisuj takiego adresu IP, nawet jeśli jest on całkowicie poprawny nawet w klasowych sieciach IP. Niektóre starsze stosy oprogramowania / adresu IP mogą mieć z tym problemy.
AKTUALIZACJA: autor : goblinlord
Zgodnie z RFC 1812 (sekcja 5.3.5.2) to, co nazywamy adresem sieciowym, pierwotnie było używane do „transmisji rozgłoszonych”, które wysyłałyby pakiet rozgłoszeniowy do pożądanej sieci. Ta funkcja stała się przestarzała z powodu ataków SMURF. Funkcja została oficjalnie zmieniona w RFC 2644 . Następnie kolejne implementacje powinny po cichu upuszczać pakiety z adresem źródłowym, jak opisano (adres sieciowy). Chociaż tak powinno się stać, jestem ciekawy, ile implementacji to robi.
Jest to dodatkowo dodane w RFC 3021, gdy adresowano podsieci / 31.
Praktyczna odpowiedź brzmi: to naprawdę zależy. To zależy od:
Podczas testowania tego nie napotkałem żadnych problemów z dostępem do żadnych stron; wydaje się, że ostatecznie wszystko zależy od kaprysów administratorów sieci. Zwykle urządzenie nadrzędne nie ma możliwości stwierdzenia, czy adres jest częścią adresu sieciowego czy rozgłoszeniowego, czy nie, ponieważ jest to po prostu adres w większym bloku dla nich ... Więc żaden dostawca usług internetowych nie zablokuje ci przypisania i używając twojego adresu sieciowego, chyba że przydzielono go tobie, a administrator sieci wyraźnie go zablokował.
Jestem pewien, że są analitycy bezpieczeństwa i hakerzy, którzy mają niesamowicie szczegółowe statystyki dokładnie, ile wariantów implementacji stosu TCP-IP jest na rynku oraz co robią i czego nie akceptują, ani nie pozwalają, i dokładnie jak i gdzie brakuje im znaku .
W rzeczywistości przeglądam i publikuję to z mojego adresu sieciowego.
Nie nazywaj mnie złym internautą, chyba że masz lepsze rozwiązanie tego domu z kartami: w rzeczywistości jest to możliwe. W rzeczywistości nikt tak naprawdę nie był wystarczająco inteligentny, aby usiąść i przemyśleć to wszystko we wszystkich możliwych iteracjach, aby wymyślić całkowicie głupi projekt, zanim ludzie zaczną go używać - jak w przypadku większości rzeczy w życiu. Wynik? Standardy, w których wiele rzeczy się nie sumuje i / lub gubi w tłumaczeniu.
Witamy w prawdziwym świecie. Nie pozwól, aby zniechęciło Cię to do ścigania wciąż nieuchwytnych optymalnych ideałów ... Nie oczekuj wsparcia od „oficjalnych” kanałów lub forów, chyba że zechcesz ubrudzić sobie ręce i poświęcić temu swój czas i życie, budując niezbędny konsensus i poruszanie się po polityce wokół tego.
Myślę więc, co próbowali powiedzieć inni plakaty: jeśli chcesz wprowadzić tę oficjalną politykę i wykorzystać ją w produkcji, jesteś sam. (Ale czy i tak nie jesteś?) Być może odniesiemy szczęście i opracujemy komputerową inteligencję IPv8, która jest wstecznie kompatybilna z IPv4 i IPv6 i wszystkimi ich uszkodzonymi implementacjami.
źródło
Jestem nowy w sieci, ale dam też 2 centy.
Jeśli mam podsieć / 28 od xxx0 - xxx15 Zgodnie ze wstępnie zdefiniowanymi regułami pozostanie 14 hostów możliwych do wykorzystania i 2 pozostałe. pozostałe dotyczą sieci i transmisji.
Pozwala, zamiast postępować zgodnie z powyższą regułą, faktycznie używać wszystkich 16 hostów. W takim przypadku wszystko byłoby w porządku, żadnych problemów. Ale gdyby komunikacja była potrzebna poza siecią, nie byłoby to możliwe ze względu na brak zasobów do wysyłania lub odbierania informacji.
Nie jestem dobry w wyjaśnianiu, ale mówiąc inaczej.
Gdybym mieszkał w domu na ulicy, a ulica zawierała 14 domów. Droga dojazdowa i wyjazdowa w celu uzyskania dostępu do głównej drogi.
Mój adres pocztowy to 1-14 Personal Street, Off Network Road.
To nie będzie problem dla listonosza. Załóżmy teraz, że deweloperzy zachłannie dodali 2 kolejne domy i pozbyli się ścieżek.
Wówczas mój nowy adres pocztowy będzie mieścić się w przedziale 1-16 Personal Street
W tym przypadku listonosz miałby kłopoty.
Zgadnij, daj mi znać, jeśli mówię o byku.
źródło
Adres sieciowy pozwala budować tabele tras z kolumną docelową o stałym rozmiarze (4 bajty IPv4) i operacjami binarnymi o stałym rozmiarze, dzięki czemu routing hosta i routing sieciowy są w rzeczywistości tym samym.
Wyobraź sobie następującą tabelę routingu: (ten komputer ma połączenie równoległe z innym komputerem i kartą sieciową)
AND między adresem IP a maską sieci daje dokładnie to, czego potrzebujesz, liczbę 4 bajtów, którą można porównać z każdą linią bez dalszych obliczeń.
Zatem numer hosta zero jest szczególny w tym sensie, że po operacji AND jego adres naturalnie reprezentuje całą sieć.
Jeśli zdecydujesz się użyć numeru sieci jako numeru hosta, powstanie tabela taka:
Wydaje się to uzasadnione, więc przypuszczam, że pojęcie adresu sieciowego jest używane do rutowania, dlatego postanowiono arbitralnie oznaczyć go jako adres specjalny i zakazać jego używania jako adresu hosta.
Cóż ... właściwie to nie jest takie proste. Postanowiłam spróbować (!!!):
Obecnie programy sieciowe nie pozwalają mi używać numeru sieci jako zwykłego adresu.
źródło
Szukając odpowiedzi na to pytanie, natknąłem się na ten artykuł z Cisco. Myślę, że poniższy cytat z tego artykułu ładnie podsumowuje.
Unikanie zamieszania jest dla mnie wystarczającym powodem.
źródło
RFC 1122 („Wymagania dotyczące hostów internetowych - warstwy komunikacyjne”) zabrania:
źródło
Adres sieciowy nie jest uważany za adres hosta, ale jest tylko liczbą. W obszarach o ograniczonym adresie, takich jak sieci punkt-punkt, często używana jest maska / 30, ale nadal wykorzystuje ona adresy hosta. Mniejszą praktyką, ale osiągającą tę samą zasadę, jest użycie maski / 31 i użycie jednego końca jako adresu sieciowego, a drugiego jako transmisji.
Dawny.
źródło