Różnice między wybraną wersją a wersją aktualną.
| Both sides previous revision Poprzednia wersja Nowa wersja | Poprzednia wersja | ||
|
bio-psiec:zagadnienia-wejsciowki [2025/11/10 13:21] jkonczak |
bio-psiec:zagadnienia-wejsciowki [2025/12/04 12:02] (aktualna) jkonczak |
||
|---|---|---|---|
| Linia 73: | Linia 73: | ||
| * podać w argumentach funkcji ''connect'' przy tworzeniu gniazda TCP (nie chodzi o nazwy stałych, tylko o to co one oznaczają) | * podać w argumentach funkcji ''connect'' przy tworzeniu gniazda TCP (nie chodzi o nazwy stałych, tylko o to co one oznaczają) | ||
| * wiedzieć jakie wartości (i w jakich sytuacjach) zwracają funkcje: ''socket'', ''connect'', ''read'', ''write'' | * wiedzieć jakie wartości (i w jakich sytuacjach) zwracają funkcje: ''socket'', ''connect'', ''read'', ''write'' | ||
| + | |||
| + | ===== Laboratoria 9 (27.11) ===== | ||
| + | |||
| + | * znać wymienione niżej funkcje API gniazd, to znaczy wiedzieć: | ||
| + | * jak nazywa się funkcja która wykonuje konkretne działanie | ||
| + | * jakich informacji potrzebuje (nie trzeba znać kolejności, nazw, ani dokładnych typów argumentów) | ||
| + | * co każda z tych funkcji zwraca (nie chodzi o typ, bo wszystkie zwracają typ ''int'' – trzeba wiedzieć co oznacza jego wartość) | ||
| + | * lista funkcji | ||
| + | * ogólne: | ||
| + | * tworzenie gniazda | ||
| + | * ustalanie lokalnego adresu | ||
| + | * zamykanie gniazda | ||
| + | * połączeniowe: | ||
| + | * łączenie do wybranego adresu | ||
| + | * oczekiwanie na nowe połączenia | ||
| + | * przyjęcie nowego połączenia | ||
| + | * wysyłanie danych | ||
| + | * odbiór danych | ||
| + | * zakończenie połączenia | ||
| + | * bezpołączeniowe: | ||
| + | * wysłanie danych | ||
| + | * odbiór danych | ||
| + | * odpytywanie o nazwy domenowe: | ||
| + | * do odwzorowywania nazw domenowych na adresy IP | ||
| + | * do odwzorowywania adresów IP na nazwy domenowe | ||
| + | * wiedzieć co oznaczają stałe które występują w tych funkcjach: \\ AF_INET, AF_INET6, SOCK_STREAM, SOCK_DGRAM, IPPROTO_TCP, IPPROTO_UDP, INADDR_ANY, INADDR_LOOPBACK, SOMAXCONN, SHUT_RDWR, SO_REUSEADDR | ||
| + | * wiedzieć w jakiej kolejności można wywoływać w/w funkcje | ||
| + | * wiedzieć jakie funkcje i w jakiej kolejności należy użyć, aby stworzyć: | ||
| + | * klienta TCP | ||
| + | * serwer TCP | ||
| + | * klienta UDP | ||
| + | * serwer UDP | ||
| + | |||
| + | ===== Laboratoria 11 (11.12) ===== | ||
| + | |||
| + | * wiedzieć do czego jest tablica filtrów w iptables/ip6tables i wiedzieć że są inne tablice | ||
| + | * wiedzieć do których pakietów stosowane są reguły w łańcuchach INPUT, OUTPUT i FORWARD | ||
| + | * znać komendy do: | ||
| + | * wypisania wskazanej tablicy w iptables/ip6tables | ||
| + | * sprawdzenia ile pakietów dopasowało się do konkretnej reguły | ||
| + | * zmiany polityki wskazanego łańcucha | ||
| + | * usuwania wskazanych reguł | ||
| + | * wstawiania reguł na koniec i do środka wskazanego łańcucha | ||
| + | * dla komend dodających reguły, umieć zawrzeć w regule: | ||
| + | * filtr sprawdzający czy pakiet wszedł/wyjdzie wskazanym interfejsem | ||
| + | * filtr sprawdzający czy pakiet przyszedł ze wskazanego adresu/sieci lub jest kierowany na wskazany adres/do wskazanej sieci | ||
| + | * filtr sprawdzający źródłowy/docelowy port TCP/UDP | ||
| + | * to, czy pasujący do reguły pakiet ma być przepuszczony, zignorowany czy odrzucony | ||
| + | * umieć czytać listę reguł (wykorzystującą wymienione wyżej filtry) i określać czy podany pakiet zostanie przepuszczony, zignorowany czy odrzucony | ||
| + | |||