LAB 05 | Temat: DNS i inne usługi warstwy aplikacji |
---|---|
Imię i nazwisko | |
Grupa | Właściciel sprawozdania: Konrad Kania |
Szef zespołu: | |
Członkowie: |
|
Data | 2016-04-07 |
Jeśli tego do tej pory nie zrobiłeś, to zapoznaj się z podstawowymi zasadami organizacji ćwiczeń w laboratorium komputerowym w ramach przedmiotu „Sieci komputerowe” [link do dokumentu] oraz z zasadami oceniania zajęć laboratoryjnych [link] i warunkami zaliczenia przedmiotu [link] dostępnymi jako zasoby kursu na platformie Moodle
Wstępny plan podziału pracy w zespole :
kto | Co ma zrobić |
---|---|
Tę tabelkę wypełniają w toku zajęć ( ale wersja wstępna powstaje na początku zajęć, a potem może być korygowana) wszyscy członkowie zespołu identycznie dokumentując swój wkład. Jeśli każdy robi to samo, to w rubryce „kto” należy wpisać słowo „wszyscy”. Należy wykazywać nie tylko punkty programu zajęć, ale również pomocnicze działania mające wpływ na końcowy rezultat, np. „Opracowanie wzorcowego pliku konfiguracji serwera Appache dla zespołu”, „wyszukanie procedury instalacji programu PacketTracer w systemie Debian i napisanie skryptu instalacyjnego dla reszty zespołu” itp.
Podstawowe cele zajęć:
Praktyczna weryfikacja teoretycznej wiedzy na temat zasad konfigurowania i funkcjonowania DNS-u
Aplikacje internetowe jako zadanie programowania komunikacji procesów rozproszonych . Elementy programowania w języku C w środowisku Linux.
Identyfikacja najważniejszych narzędzi sieciowych dostępnych w środowisku systemów operacyjnych
Dodatkowe cele do osiągnięcia na zajęciach i w ramach pracy własnej (bieżące zadania do domu):
Doskonalenie umiejętności dokumentowania dokumentowania sieci (schematy, parametry konfiguracji TCP/IP) .
Doskonalenie kompetencji w zakresie instalacji i konfiguracji programów zarówno użytkowych jak i systemowych w środowisku systemów MS Windows i Linux. Menadżery pakietów apt-get i aptitude.
Weryfikacja i uzupełnianie kompetencji efektywnej pracy w środowisku dowolnego systemu operacyjnego zarówno z interfejsem GUI jak i CLI (Powtórka i niezbędne uzupełnienia wiedzy na temat komend i funkcji systemów Linux i MS Windows zarówno w środowisku znakowym jak i graficznym).
W wybranym środowisku ( komputer laboratoryjny lub Twój własny) przygotuj pliki komputerów wirtualnych pracujących w systemie Debian, które miały być efektem poprzednich zajęć i dokończone w domu ( poza zajeciami).
Policz ile bajtów nagłówków zostanie dodanych do danych zakładając, że (oznaczenia odnoszą się do podanego schematu):
Dane mają wielkość 60KB,
Maksymalny rozmiar paczki danych ( bez nagłówka) to T 12KB, S 3KB, L 3KB,
Nagłówki TCP i IP mają długość 20 bajtów, nagłówek Ethernet 26 bajtów,
Odpowiedź: |
---|
Dla konfiguracji karty w trybie BRIDGED Twojego komputera wirtualnego narysuj schemat sieci korzystając z jednego z rekomendowanych na zajęcia narzędzi ( preferowany program Dia) i amieść go w ramce poniżej. Jednocześnie wypełnij danymi konfiguracyjnymi tabelkę w sposób zgodny ze schematem. UWAGA1.W razie potrzeby uruchom swój komputer wirtualny z karta w trybie BRIDGED (pamiętaj o zasadach konfiguracji w sieci laboratoryjnej!) UWAGA2. Schemat i parametry konfiguracji mogą odnosić się do warunków sieci domowej (niekoniecznie do warunków w laboratorium)
TUTAJ WSTAW SCHEMAT |
---|
Tryb karty wirtualnej |
Adres MAC |
Adres IP |
Maska |
Router domyślny |
Serwer DNS |
DHCP (pisz TAK lub NIE |
Weryfikacja poprawności środowiska programowania w języku C/C++ oraz przygotowania komputera do współdzielenia folderów.
Na komputerze rzeczywistym znajdź w Internecie minimum dwa przykłady programów w jezyku C ilustrującym tworzenie nowego procesu w systemie Unix/Linux. Pierwszy, który ilustruje tylko działanie funkcji fork(), oraz drugi, który pokazuje zasadę uruchamiania programów użytkownika w systemie Unix ( z funkcją exec()). Podaj URL’e wykorzystanych programów tutaj: http://www.yolinux.com/TUTORIALS/ForkExecProcesses.html
Skopiuj teksty programów do Notepadaa++ i zapisz do katalogu współdzielonego z wirtualnym Debian’em
Skompiluj i wykonaj po Debian’em każdy z tych programów. Zrzuty ekranów z kompilacją i wykonaniem każdego z nich zamieść poniższej tabeli w oddzielnych wierszach:
#include <iostream> #include <string> // Required by for routine #include <sys/types.h> #include <unistd.h> #include <stdlib.h> // Declaration for exit() using namespace std; int globalVariable = 2; main() { string sIdentifier; int iStackVariable = 20; pid_t pID = fork(); if (pID == 0) // child { // Code only executed by child process sIdentifier = "Child Process: "; globalVariable++; iStackVariable++; } else if (pID < 0) // failed to fork { cerr << "Failed to fork" << endl; exit(1); // Throw exception } else // parent { // Code only executed by parent process sIdentifier = "Parent Process:"; } // Code executed by both parent and child. cout << sIdentifier; cout << " Global variable: " << globalVariable; cout << " Stack variable: " << iStackVariable << endl; } |
Instalacja serwera NDS (BIND9)
Przełącz tryb pracy karty sieciowej M1 na „BRIDGED” (Pamietaj o warunkach konfiguracji sieci laboratoryjnej).
Z poziomu przeglądarki komputera wirtualnego M1 wyświetl swoją stronę WWW używając nowego adresu IP komputera M1. Okno zrzutu (fragment) z otwartą swoją stroną WWW tak aby Twoje dane i adres strony ( IP wirtualnego komputera M1) były czytelne Zapisz zrzut w pliku pod nazwą ZRZUT2-Twoje-nazwisko. i umieść go w ramce ZRZUT2.
ZRZUT2 |
---|
Korzystając z dostępnych w Internecie materiałów skonfiguruj serwer DNS (skonfiguruj usługi nazewnicze, czyli zainstalowany program BIND9) tak, abyś mógł w przeglądarce internetowej komputera M2 zamiast numeru IP wpisać nazwę domenową postaci: http://www.nazwisko, gdzie "nazwisko", to Twoje nazwisko bez polskich znaków. Z poziomu przeglądarki komputera wirtualnego M1 wyświetl swoją stronę WWW używając nowego adresu IP komputera M1. Okno zrzutu (fragment) z otwartą swoją stroną WWW tak aby Twoje dane i adres strony ( IP wirtualnego komputera M1) były czytelne Zapisz zrzut w pliku pod nazwą ZRZUT3-Twoje-nazwisko. i umieść go na końcu sprawozdania w ramce ZRZUT3
Sprawdź, czy podanie jako adresu Twojej strony przeglądarce komputera M1 adresu postaci http://twoje_inicjały , gdzie „twoje inicjały” są pisane dużymi literami pozwoli otworzyć stronę.
Zmień zawartość pliku /etc/hosts tak, aby adres podany w poprzednim punkcie również otwierał Twoją stronę. Z poziomu przeglądarki komputera wirtualnego M1 wyświetl swoją stronę WWW używając nowego adresu IP komputera M1. Okno zrzutu (fragment) z otwartą swoją stroną WWW tak aby Twoje dane i adres strony ( IP wirtualnego komputera M1) były czytelne Zapisz zrzut w pliku pod nazwą ZRZUT4-Twoje-nazwisko. i umieść go na końcu sprawozdania w ramce ZRZUT4
Znajdź na komputerze rzeczywistym (LAB-komputerze) plik hosts w środowisku Windows.
Identyfikacja konfiguracji usług nazewniczych dla domeny „uek.krakow.pl” oraz innej dowolnie wybranej przez siebie domeny
Korzystając z narzędzi DNS
[En] DNSstuff Toolbox
[En] DNSstuff Free Tools&Trials
Dla dwóch domen:
uek.krakow.pl
wybranej przez siebie _____________________
wydobądź maksimum informacji z bazy DNS i spróbuj je krótko ze stawić w tabelce o strukturze jak niżej
Domena: uek.krakow.pl | Domena: | |
---|---|---|
właściciel | ||
Serwer podstawowy | ||
Serwer zapasowy | ||
Rekord SOA | ||
Zadanie do wykonania poza czasem zajęć: Pytania sprawdzające
1. Jaka jest funkcja i zasada działania systemu DNS?
2. Jakie są rodzaje: a) serwerów DNS; b) zapytań DNS; c) rekordów zasobowych DNS?
3. Jak wykonywane są rekurencyjne oraz iteracyjne zapytania DNS?
4. Opisz kolejne kroki przy konfiguracji serwera DNS.
5. Co to jest odwrócone zapytanie DNS (ang. DNS reverse lookup)? Jakie warunki muszą zostać spełnione, aby możliwe było wykonywanie zapytań odwróconych?
6. Na czym polega transfer strefy (ang. zone transfer) w systemie DNS ?
7. Jak działa serwer DNS typu forwarder ?
8. Objaśnij (możliwie szczegółowo ) najważniejsze rekordy zasobowe serwera DNS:
• rekord SOA (ang. Start of Authority)
• rekord A ;
• rekord NS
• rekord CNAME
• rekord MX (ang. Mail eXchanger)