===== Zagadnienia na test (2019) ===== === Ogólne === * kojarzyć powtarzające się na zajęciach skróty, nazwy organizacji, rodzin standardów etc. * dla wszystkich wspomnianych w wymaganiach narzędzi / komend być w stanie: * ocenić czy są poprawne * przewidzieć co zrobią * zinterpretować wynik ==== 1. Wstęp i model warstwowy sieci ==== * znać warstwy modelu warstwowego (zarówno ISO/OSI jak i TCP/IP) * dla każdej warstwy wiedzieć za co odpowiada * kojarzyć tradycyjne nazwy wiadomości na poszczególnych warstwach * kojarzyć pojęcia kapsułkowanie (enkapsulacja), PDU, MTU ==== 2. Adresacja IP ==== * wiedzieć jak rozdzielana jest pula adresów IP * rozróżniać adres sieci, urządzeń, rozgłoszeniowy, wiedzieć co to maska sieci * wiedzieć jakie adresy nie mogą być używane przez urządzenia * umieć dla poddanego adresu określić klasę * znać domyślne maski dla klas A, B i C * umieć dla podanego adresu i maski wyznaczyć: * adres sieci * adresy, z których mogą korzystać urządzenia w tej sieci * adres rozgłoszeniowy * znać zakresy adresów: * multicastowych * bloków prywatnych dla każdej klasy * pętli zwrotnej i adres localhosta * umieć podzielić sieć na podsieci * umieć agregować sieci ==== 3. Podstawowe narzędzia sieciowe ==== * kojarzyć nazewnictwo kart sieciowych w Linuksie * wiedzieć że są interfejsy fizyczne i wirtualne * znać komendy do: * wyświetlenia listy interfejsów sieciowych * włączenia / wyłączenia interfejsu * wyświetlenia listy adresów IP interfejsów * dodania / zmiany / usunięcia adresu IP * sprawdzenia, czy jest łączność między dwoma adresami IP * rozróżniać za co odpowiada komenda ''ip link'', a za co ''ip addr'' ==== 4. Warstwa fizyczna ==== * wiedzieć, że karty wykrywają łączność na warstwie fizycznej, kojarzyć że można tą informację odczytać programowo / z diody przy gnieździe * kojarzyć co to jest autonegocjacja i do czego jest potrzebna * wiedzieć kiedy stosować kabel prosty a kiedy skrosowany, kojarzyć Auto MDI-X * wiedzieć o możliwości zaistnienia kolizji, rozumieć co to jest domena kolizyjna i kojarzyć mechanizm CSMA/CD * kojarzyć górny/dolny limit na wielkość ramki ethernetowej * kojarzyć narzędzie ethtool * wiedzieć czym są i jak działają repeater i hub ==== 4÷5. Warstwa łącza danych ==== * o adresie fizycznym (adresie MAC): * wiedzieć jak wygląda, skąd się bierze, kojarzyć podział adresu na OUI i NIC * kojarzyć bit określający czy adres jest multicastowy * kojarzyć komendy do wyświetlania adresu * wiedzieć że można zmienić używany MAC * kojarzyć budowę ramki Ethernet II * rozumieć co to jest domena rozgłoszeniowa * wiedzieć jak działają mosty i przełączniki * kojarzyć do czego jest protokół drzewa rozpinającego ==== 6. IPv4, ICMP, ARP ==== * znać ograniczenia IP na długość pakietu * kojarzyć pole TTL, wiedzieć czemu służy i jak się zmienia * wiedzieć po co jest fragmentacja i kiedy jest wykonywana * znać rolę protokołów ICMP i IGMP * kojarzyć typy wiadomości ICMP * znać rolę protokołu ARP * kojarzyć narzędzia ''arp'' / ''ip neigh'' oraz ''arping'' ==== 7. Trasowanie – wstęp, routing statyczny w Linuksie ==== * rozróżniać co to jest trasowanie, uzupełnianie tablicy tras i protokół trasowania * znać podział protokołów trasowania * wiedzieć jak zbudowana jest tablica tras: * wiedzieć jakie informacje musi mieć każdy wpis w tabeli * co to jest trasa domyślna * jak można opisać trasę do docelowej sieci * wiedzieć czym jest metryka trasy * na podstawie tablicy tras umieć wskazać którędy dane będą przesyłane * umieć skonstruować kompletną tablicę tras znając topologię sieci * znać polecenia do manipulacji tablicą tras w Linuksie * wiedzieć co to jest IP forwarding w Linuksie * wiedzieć co to jest router (w szczególności: odróżniać domowy "router" od routera) ==== 8. Urządzenia CISCO: wstęp, konfiguracja interfejsów, routing statyczny ==== * kojarzyć że sprzęt CISCO z fabrycznymi ustawieniami da się skonfigurować tylko po porcie szeregowym * wiedzieć że na urządzeniach CISCO są różne poziomy uprawnień i kojarzyć że różnią się znakiem zachęty (promptem) * kojarzyć komendy systemu CISCO IOS * kojarzyć jak CISCO nazywa interfejsy * kojarzyć interfejsy Serial, kojarzyć role DCE i DTE ==== 9. Protokół OSPF ==== * wiedzieć jakimi informacjami wymieniają się trasowniki * wiedzieć jak OSPF: * liczy koszt łącza * liczy koszt trasy * wybiera najlepsze trasy * kojarzyć co trzeba skonfigurować do poprawnego działania OSPF ==== 10. Sieci wirtualne (VLAN) ==== * znać pojęcia * VLAN * 802.1Q * trunk port * wiedzieć * czym jest VLAN * jak wygląda komunikacja wewnątrz VLAN * jak wygląda komunikacja między różnymi sieciami VLAN * do czego używa się VLANów * na jakiej warstwie pracują sieci VLAN * na czym polega konfiguracja VLANów na przełączniku * jak łączy się przełączniki używające VLANów ze sobą * jak łączy się przełączniki używające VLANów z routerami ==== 11. Protokoły warstwy transportowej ==== * wiedzieć że port / numer portu to adres warstwy transportowej który pozwala adresować proces w systemie * rozumieć jakie adresy / numery (i dlaczego te) pozwalają zaliczyć wiadomość do konkretnego połączenia * rozumieć że każdy protokół warstwy transportowej ma osobną pulę portów * kojarzyć podział portów na uprzywilejowane (do 1024), user ports i efemeryczne * kojarzyć że program może czekać na połączenie (słuchać) lub próbować się połączyć ze słuchającym programem * kojarzyć komendy ss/netstat i netcat/socat * znać i rozumieć cechy UDP: * bezpołączeniowy, bezstanowy * przesyła wiadomości bez gwarancji dostarczenia * brak kontroli przepływu * ograniczenie rozmiaru paczki danych * znać i rozumieć cechy TCP: * stanowy, połączeniowy * strumieniowy * z kontrolą przepływu * z gwarancjami dostarczenia (przy braku awarii) * kojarzyć przykładowe zastosowania protokołów UDP i TCP ==== 12. Filtrowanie ruchu – firewall ==== * znać i rozumieć podział łańcuchów ze względu na: * miejsce wystąpienia (prerouting, input, forward, output, postrouting) * przeznaczenie (filter, nat, mangle, …) * umieć wybrać właściwy łańcuch dla podanej reguły * wiedzieć jak rozpatrywany jest łańcuch reguł (kolejność reguł, polityka, kiedy kończy się przeglądanie reguł) * wiedzieć co oznaczają cele ACCEPT, DROP, REJECT i jaka jest różnica między DROP a REJECT * na podstawie listy reguł określić jak system zareaguje na podany ruch * kojarzyć komendy konfigurujące filtrowanie ruchu * kojarzyć używane w trakcie zajęć rozszerzenia iptables * rozumieć co to znaczy że firewall jest stanowy ==== 13. Filtrowanie ruchu – NAT ==== * wiedzieć jaki problem rozwiązuje NAT * wiedzieć jakie problemy wprowadza NAT * znać ideę: * source NAT (i rozróżniać w iptables SNAT i maskaradę) * destination NAT * rozumieć które adresy, na jakie adresy i na którym etapie przetwarzania pakietu trzeba przepisywać ==== 13. DHCP ==== * kojarzyć jak wygląda transakcja DHCP – odkrywanie serwerów, żądanie adresu, odnawianie adresu, uwalnianie adresu * wiedzieć co to jest pula adresów, dzierżawa, wiedzieć po co jest czas dzierżawy * kojarzyć że DHCP pozwala na przesłanie dodatkowych opcji