PLD-doc: book/pl_book__master.docb book/pl_book__siec/pl_siec__narzedzia.sec book/pl_book__siec/pl_s...

qwiat cvs w pld-linux.org
Śro, 20 Lip 2005, 02:18:22 CEST


Author: qwiat
Date: Wed Jul 20 02:18:19 2005
New Revision: 6224

Added:
   PLD-doc/book/pl_book__siec/pl_siec__narzedzia.sec
      - copied, changed from rev 6223, PLD-doc/queue/pl_siec__narzedzia.sec
Removed:
   PLD-doc/queue/pl_siec__narzedzia.sec
Modified:
   PLD-doc/book/pl_book__master.docb
   PLD-doc/book/pl_book__siec/pl_siec_zastosowania.chp
Log:
- dodaie opisu programow host i netstat
- wywalenie opisu programu ss
- przeniesie z queue do mastera
- cale mnostwo drobnych poprawek


Modified: PLD-doc/book/pl_book__master.docb
==============================================================================
--- PLD-doc/book/pl_book__master.docb	(original)
+++ PLD-doc/book/pl_book__master.docb	Wed Jul 20 02:18:19 2005
@@ -67,6 +67,7 @@
 <!ENTITY siec_pppssh SYSTEM "pl_book__siec/pl_siec_vpn__ppp_ssh.sec">
 <!ENTITY siec_vtun SYSTEM "pl_book__siec/pl_siec_vpn__vtun.sec">
 <!ENTITY siec_zaawansowane SYSTEM "pl_book__siec/pl_siec__zaawansowane.sec">
+<!ENTITY siec_narzedzia SYSTEM "pl_book__siec/pl_siec__narzedzia.sec">
 <!ENTITY uslugi SYSTEM "pl_book__uslugi/pl_uslugi.chp">
 <!ENTITY uslugi_alsa SYSTEM "pl_book__uslugi/pl_uslugi__alsa.sec">
 <!ENTITY uslugi_named SYSTEM "pl_book__uslugi/pl_uslugi__named.sec">

Copied: PLD-doc/book/pl_book__siec/pl_siec__narzedzia.sec (from rev 6223, PLD-doc/queue/pl_siec__narzedzia.sec)
==============================================================================
--- PLD-doc/queue/pl_siec__narzedzia.sec	(original)
+++ PLD-doc/book/pl_book__siec/pl_siec__narzedzia.sec	Wed Jul 20 02:18:19 2005
@@ -1,26 +1,21 @@
 <?xml version="1.0" encoding="iso-8859-2"?>
 <section id="siec_narzedzia">
-<title>Narzędzia sieciowe</title>
-	<para>
-		Na co dzień do konfiguracji sieci używamy skryptów systemowych
-		oraz odpowiednich plików konfiguracji. Czasami jednak potrzebujemy
-		dokonać szybkiej rekonfiguracji, sprawdzić ustawienia lub
-		zdiagnozować jakiś problem.
-	</para>
+	<title>Narzędzia sieciowe</title>
 	<para>
 		W PLD głównym pakietem narzędzi sieciowych jest
 		<productname>iproute2</productname>, oferuje on większe możliwości
 		oraz bardziej ujednolicony interfejs obsługi w stosunku do narzędzi
-		z pakietu <productname>net-tools</productname> (<command>ifconfig<command>,
-		<command>route<command>, <command>arp<command>, <command>ifup<command>,
-		<command>ifdown<command>).
+		z pakietu <productname>net-tools</productname> (<command>ifconfig</command>,
+		<command>route</command>, <command>arp</command>, <command>ifup</command>,
+		<command>ifdown</command>).
 		Sercem pakietu <productname>iproute2</productname> jest program
-		<command>ip</command>, zawierający funkcjonalność kilku starszych
-		narzędzi w jednym.
+		<command>ip</command> zawierający funkcjonalność kilku starszych
+		narzędzi w jednym. Z tego względu będzie naszym podstawowym
+		narzędziem sieciowym.
 	</para>
 	
 	<section id="siec_narzedzia_interfejsy_info">
-	<title>Dane interfejsow</title>
+		<title>Konfiguracja interfejsow</title>
 		<para>
 			Aby wyświetlić konfigurację interfejsów użyjemy polecenia
 			<command>ip addr</command>.
@@ -40,12 +35,13 @@
 3: sit0: &lt;NOARP&gt; mtu 1480 qdisc noop
     link/sit 0.0.0.0 brd 0.0.0.0</screen>
 		<para>
-			Polecenie wyświetliło listę dostępnych interfejsów,
-			oznaczonych numerami. W większości wypadków najbardziej
-			interesujące są dla nas interfejsy fizyczne - tutaj eth0.
+			Polecenie wyświetliło listę dostępnych interfejsów, każdy z
+			nich oznaczony jest numerem porządkowym. W większości wypadków
+			najbardziej interesujące są dla nas interfejsy fizyczne (eth0 na
+			powyższym przykładzie).
 			Interfejsy <emphasis>lo</emphasis> oraz <emphasis>sit0</emphasis>,
-			nie są urządzeniami fizycznymi, pierwsze z nich to interfejs pętli
-			zwrotnej (loopback), drugie to interfejs służący do tunelowania
+			są "wirtualnymi" interfejsami, pierwszy z nich to interfejs pętli
+			zwrotnej (loopback), drugi służy do tunelowania
 			protokołu IPv6 wewnątrz IPv4.
 		</para>
 		<para>
@@ -68,9 +64,11 @@
 			</itemizedlist>
 		</para>
 		<para>
-			Poniżej wyświetlone zostały informacje o adresach sprzętowych oraz IP:
+			Poniżej omawianego wiersza wyświetlone zostały informacje o
+			adresach związanych z urządzeniem (adresy IP i maski podsieci
+			są przedstawione w notacji CIDR):
 			<itemizedlist>
-				<listitem><para>-link/ether - adres fizyczny karty sieciowej</para></listitem>
+				<listitem><para>-link/ether - adres fizyczny karty sieciowej (MAC)</para></listitem>
 				<listitem><para>-inet - dane protokołu IPv4</para></listitem>
 				<listitem><para>-inet6 - dane protokołu IPv6</para></listitem>
 			</itemizedlist>
@@ -80,14 +78,14 @@
 	
 	
 	<section id="siec_narzedzia_interfejsy_zarzadzanie">
-	<title>Zarządzanie interfejsami</title>
+		<title>Zarządzanie interfejsami</title>
 		<para>
 			Do najczęstszych operacji tego typu należy włączanie i
 			wyłączanie interfejsów, w tym celu użyjemy następującego
 			polecenia:
 		</para>
 		<para><emphasis>ip link set {$interfejs} {up/down}</emphasis></para>
-		<screen># ip link set eth0 up
+<screen># ip link set eth0 up
 # ip link set eth0 down</screen>
 		<para>
 		</para>
@@ -96,18 +94,34 @@
 		<para><emphasis>ip addr {add/del} {$adresIP}/{$maska} dev {$interfejs}</emphasis></para>
 		<screen># ip addr add 10.1.1.1/24 dev eth0
 # ip addr del 10.1.1.1/24 dev eth0</screen>
-
-		<para>Adres MAC karty sieciowej ustawimy poleceniem:</para>
-		<para><emphasis>ip link set {$interfejs} address {$MAC-adres}</emphasis></para>
+	</section>
+	
+	
+	<section id="siec_narzedzia_interfejsy_mac">
+		<title>Adresy sprzętowe(MAC)</title>
+		<para>Do odczytania adresu sprzętowego karty sieciowej możemy użyć
+			opisanego wcześniej polecenia <command>ip addr</command>.
+			Dowolny adres MAC karty sieciowej ustawimy poleceniem:</para>
+		<para><emphasis>ip link set {$interfejs} address {$MAC-adres}</emphasis>
 			<screen># ip link set eth0 address 01:01:01:01:01:01</screen>
+		</para>
+		<para>
+			Aby adres sprzętowy za każdym razem był ustawiany dla
+			interfejsu, powinniśmy dokonać odpowiedniego wpisu w pliku
+			konfiguracyjnym interfejsu. W przypadku urządzenia eth0
+			musimy zmodyfikować plik
+			<filename>/etc/sysconfig/interfaces/ifcfg-eth0</filename>,
+			i dodać zmienną MACADDR np.:
+			<screen>MACADDR="01:01:01:01:01:01"</screen>
+		</para>
 	</section>
-
-
+	
+	
 	<section id="siec_narzedzia_arp">
 		<title>ARP</title>
 		<para>
 			Aby wyświetlić tablicę ARP należy użyć polecenia
-			<command>ip neighbour</command> (<command>arp</command>):
+			<command>ip neighbour</command>:
 		</para>
 		<screen># ip neighbour
 10.0.0.140               ether   00:E0:7D:A1:8B:E2   C                     eth0
@@ -120,7 +134,7 @@
 			<command>ping</command>.
 		</para>
 		<para>
-			Możemy stworzyć własną, statyczną tablicę ARP. Posłuży nam do
+			Możemy stworzyć własną, statyczną tablicę ARP, posłuży nam do
 			tego plik <filename>/etc/sysconfig/static-arp</filename> w
 			którym umieszczamy wpisy zawierające kolejno: interfejs, adres MAC,
 			adres IP oraz status wpisu.
@@ -128,88 +142,146 @@
 eth0 00:c0:df:f9:4e:ac 10.0.0.7 permanent</screen>
 			Opcja permanent oznacza, że wpis nigdy nie wygasa.
 		</para>
-		
 	</section>
 
 
+	<section id="siec_narzedzia_dns">
+		<title>Serwery nazw (DNS)</title>
+		<para>
+			Do odpytywania serwerów DNS możemy użyć programu <command>host</command> z
+			pakietu <productname>bind-utils</productname>. Pozwala na szybkie sprawdzenie
+			poprawności domeny konfiguracji domeny (strefy).
+		</para>
+		<para>
+			<command>host {$nazwa/$IP} {$dns_nazwa/$dns_IP}</command>
+		</para>
+		<para>
+			Pierwszy parametr to nazwa domeny lub IP maszyny, 
+			drugi parametr nie jest obowiązkowy - wskazuje na serwer nazw
+			który chcemy odpytać. Jeśli nie podamy drugiego parametru
+			użyty zostanie serwer zdefiniowany w pliku  <filename>/etc/resolv.conf</filename>.
+		</para>
+		<para>Odpytanie serwera DNS o domenę, wpisanego do pliku <filename>/etc/resolv.conf</filename> </para>
+<screen>$ host pld-linux.org
+pld-linux.org has address 217.149.246.8</screen>
+	<para>Odpytanie o adres IP (odwzorowanie odwrotne)</para>
+<screen>$ host 217.149.246.8
+8.246.149.217.in-addr.arpa domain name pointer webmachine.pld-linux.org.</screen>
+		<para>Odpytanie dowolnego serwera DNS</para>
+<screen>$ host pld-linux.org ns4.pld-linux.org.
+Using domain server:
+Name: ns4.pld-linux.org.
+Address: 217.149.246.7#53
+Aliases:
+
+pld-linux.org has address 217.149.246.8</screen>
+		<para>
+			Aby odczytać konkretny rekord domeny użyjemy
+			parametru "-t". Dla przykładu spróbujemy określić rekord MX
+			dla domeny pld-linux.org:
+			<screen>$ host -t mx pld-linux.org
+pld-linux.org mail is handled by 0 a.mx.pld-linux.org.</screen>
+		</para>
+	</section>
+
 
 	<section id="siec_narzedzia_monitoring">
 		<title>Monitorowanie sieci</title>
-		<para>Do nadzorowania połączeń, otwartych gniazd możemy użyć
-			programów <command>ss</command> lub <command>netstat</command>,
-			dla zwykłego użytkownika wygodniejszy w obsłudze może się okazać
-			pierwszy z wymienionych. Uruchomienie programu
-			<command>ss</command> bez parametru wyświetli nawiązane
-			połączenia. Użycie parametru "-l" wyświetli gniazda nasłuchujące,
-			a "-n" wyłącza tłumaczenie numerów portów na nazwy, "-r"
-			tłumaczy adresy IP na nazwy FQDN. Ważnym parametrem jest "-p"
-			- podaje on nazwę oraz PID programu, który używa danego
-			portu.
-		<screen># ss -r
-State    Recv-Q Send-Q       Local Address:Port              Peer Address:Port
-ESTAB    0      0                 10.0.0.1:3323      jabber.pld-linux.org:5223
-ESTAB    0      0                 10.0.0.1:4858           mail.icenter.pl:imap
-ESTAB    0      0                 10.0.0.1:3296      akcyza.pld-linux.org:http
-ESTAB    0      0                 10.0.0.1:3295      akcyza.pld-linux.org:http</screen>
+	    	<para>
+			Nawiązane połączenia i otwarte porty protokołu TCP/IP
+			możemy kontrolować za pomocą programu <command>netstat</command>
+			np.:
 		</para>
+<screen># netstat -tua 
 
+Active Internet connections (servers and established)
+Proto Recv-Q Send-Q Local Address           Foreign Address         State      
+tcp        0      0 *:blackjack             *:*                     LISTEN      
+tcp        0      0 *:ircs                  *:*                     LISTEN      
+tcp        0      0 *:netbios-ssn           *:*                     LISTEN      
+tcp        0      0 *:ipp                   *:*                     LISTEN      
+tcp        0      0 *:microsoft-ds          *:*                     LISTEN      
+tcp        0      0 gargamel:ircs           192.168.1.3:rapidmq-reg ESTABLISHED 
+tcp        0      0 gargamel:imaps          192.168.1.6:ttc-etap-ds ESTABLISHED 
+tcp        0      0 gargamel:td-postman     host-92.gadugadu.p:8074 ESTABLISHED 
+tcp        0      0 gargamel:cma            chrome.pl:5223          ESTABLISHED 
+tcp        0      0 *:1024                  *:*                     LISTEN      
+udp        0      0 gargamel:netbios-ns     *:*                                 
+udp        0      0 *:netbios-ns            *:*                                 
+udp        0      0 *:ipp                   *:*</screen>	
+	
+		<para>
+			Na powyższym przykładzie zostały wyświetlone dane dotyczące protokołu TCP
+			(opcja: <parameter class='command'>-t</parameter>) oraz UDP
+			(<parameter class='command'>-u</parameter>). Dodatkowo zostały wyświetlone
+			gniazda nasłuchujące (<parameter class='command'>-a</parameter>). Warte
+			uwagi są jeszcze dwa parametry: <parameter class='command'>-n</parameter>
+			i <parameter class='command'>-p</parameter>, pierwszy wyświetla porty i 
+			adresy w postaci liczb, drugi zaś wyświetla nazwy programów
+			korzystających z danych gniazd.
+		</para>
 		<para>
 			Do analizowania sieci na bieżąco świetnie nadaje się program
 			<productname>IPTraf</productname>, jest to intuicyjny w obsłudze
 			program, pozwalający śledzić ruch sieciowy i generować
-			statystyki. Obsługa programu jest tak prosta że nie wymaga
-			żadnych dłuższych wyjaśnień.
+			statystyki.
 		</para>
 		<para>
 			Bardzo wygodnym sposobem śledzenia wybranego ruchu sieciowego
-			jest użycie regułek linuksowego filtra pakietów - programu
-			<productname>IPTables</productname>. Do śledzenia ruchu służy
-			cel "-j LOG" np.:
+			jest użycie regułek linuksowego filtra pakietów. Do
+			śledzenia ruchu służy cel "-j LOG" np.:
 			<screen># iptables -A INPUT -p TCP --dport 80  -s 10.0.0.3 -j LOG</screen>
-			Powyższy wpis doda do łańcucha INPUT regułkę każącą rejestrować
-			połączenia TCP z hosta 10.0.0.3 na port 80 lokalnej maszyny.
+			Powyższy wpis doda do łańcucha INPUT regułkę rejestrującą
+			połączenia TCP z hosta 10.0.0.3 na port 80 danej maszyny.
 			Aby te regułki działały z wpisami odrzucającymi pakiety
-			(DROP/REJECT) musza być umieszczone ponad nimi, w przeciwnym
+			(DROP/REJECT) muszą być analizowane wcześniej, w przeciwnym
 			wypadku pakiet nigdy nie dotrze do regułki rejestrującej.
 			W przypadku dopasowania pakietu do regułki następuje
 			odnotowanie tego zdarzenia, wpisy te można odczytywać
 			za pomocą programu <command>dmesg</command>, lub z plików syslog-a - 
 			zwykle z <filename>/var/log/kernel</filename> i 
-			<filename>/var/log/messages</filename>
+			<filename>/var/log/messages</filename>.
 		</para>
 	</section>
-	<section id="siec_narzedzia_monitoring">
+
+
+	<section id="siec_narzedzia_zakonczenie">
 		<title>Zakończenie</title>
+		<para>
+			W przypadku modyfikacji plików konfiguracji w większości wypadków
+			trzeba dokonać restartu podsystemu sieci.
+		</para>
+		<para>
 			W tym rozdziale opisano niewielki fragment możliwości
 			dostępnych narzędzi sieciowych. Poniższa lista przedstawia
 			miejsca gdzie można znaleźć szerszy opis niektórych zagadnień.
+		</para>
+		<itemizedlist>
+			<listitem>
+				<para>
+					NET-3-HOWTO z
+					<ulink url="http://www.jtz.org.pl/">http://www.jtz.org.pl/</ulink>
+				</para>
+			</listitem>
+			<listitem>
+				<para>Zaawansowany routing:
+					<ulink url="http://echelon.pl/pubs/NET4.pdf">
+					http://echelon.pl/pubs/NET4.pdf</ulink>
+				</para>
+			</listitem>
+			<listitem>
+				<para>
+					Dokumentacja iproute2
+					<ulink url="http://www.policyrouting.org/iproute2-toc.html">
+					http://www.policyrouting.org/iproute2-toc.html</ulink>
+				</para>
+			</listitem>
+			<listitem>
+				<para>
+					<ulink url="http://linux-ip.net/">
+					http://linux-ip.net/</ulink>					
+				</para>
+			</listitem>
+		</itemizedlist>
 	</section>
-	
-	<itemizedlist>
-		<listitem>
-			<para>
-				NET-3-HOWTO z
-				<ulink url="http://www.jtz.org.pl/">http://www.jtz.org.pl/</ulink>
-			</para>
-		</listitem>
-		<listitem>
-			<para>Zaawansowany routing:
-				<ulink url="http://echelon.pl/pubs/NET4.pdf">
-				http://echelon.pl/pubs/NET4.pdf</ulink>
-			</para>
-		</listitem>
-		<listitem>
-			<para>
-				Dokumentacja iproute2
-				<ulink url="http://www.policyrouting.org/iproute2-toc.html">
-				http://www.policyrouting.org/iproute2-toc.html</ulink>
-			</para>
-		</listitem>
-		<listitem>
-			<para>
-				<ulink url="http://linux-ip.net/">
-				http://linux-ip.net/</ulink>					
-			</para>
-		</listitem>
-	</itemizedlist>
 </section>

Modified: PLD-doc/book/pl_book__siec/pl_siec_zastosowania.chp
==============================================================================
--- PLD-doc/book/pl_book__siec/pl_siec_zastosowania.chp	(original)
+++ PLD-doc/book/pl_book__siec/pl_siec_zastosowania.chp	Wed Jul 20 02:18:19 2005
@@ -7,4 +7,5 @@
 &siec_iptables;
 &siec_pppssh;
 &siec_vtun;
+&siec_narzedzia;
 </chapter>



Więcej informacji o liście dyskusyjnej pld-doc