Narzędzia użytkownika

Narzędzia witryny


Pasek boczny

sk1:podstawy_narzedzia

Podstawowe narzędzia sieciowe w Linuksie

Wstęp

Powłoka systemowa – szybkie przypomnienie SOP1

(Tekstowa) powłoka systemowa (shell), terminal, konsola.
Programy np. xfce4-terminal, konsole

Zmiana użytkownika – su
Wykonania programu na prawach innego użytkownika – sudo
Użycie sudo do uruchomienia shella z prawami roota: sudo -s (lub sudo su lub sudo -i)

Historia w konsoli: strzałki góra/dół, history, ctrl+r, fc

Obsługa polecenia less (wykonaj dla przykładu: convert -h | less albo man less):

  • przewianie: strzałki, page up / page down
  • / wyszukuje
    • n – następne wystąpienie
    • N – poprzednie
  • g – początek dokumentu; G – koniec
  • q – wyjście

Zapis poleceń

Wzór polecenia ([1]):
polecenie {jeden|z|wielu} <argument1> [-opcja1 <argument2>] --długa_opcja=<argument3> [opcja2]

Przykład polecenia:
polecenie jeden 42 [-opcja1 foo] --długa_opcja=x

Co trzeba wpisać w konsolę:
polecenie jeden 44 -oja1 baz --długa_opcja=x

Pomoc systemowa

Pomoc wbudowana w polecenia:

  • tracepath -h
  • netstat -h
  • ip a h
  • ifconfig -h

Podręcznik systemowy – komenda man i towarzyszące, np:

  • man tracepath
  • man ip
  • apropos – lista stron które w tytule mają podane słowo, np. apropos network
  • whatis – tytuły stron pod podaną nazwą, np. whatis write

Podstawowe narzędzia sieciowe

Pakiety net-tools oraz iproute2

Pakiet narzędzi net-tools powstał w 1983 roku, początkowo w systemie BSD. Od tego czasu jest utrzymywany, jednak od przeszło 10 lat jest uznawany za przstarzały i nie jest rozwijany dalej.
W skład wchodzą:
arp dnsdomainname domainname hostname ifconfig ipmaddr iptunnel mii-tool nameif netstat nisdomainname plipconfig rarp route slattach ypdomainname

Około roku 2000 stworzono pakiet iproute2, mający zastąpić net-tools (i inne, powstałe by udostępnić użytkownikom nowe możliwości jądra systemu Linux).
Pakiet iproute2 zawiera następujące polecenia:
arpd ctstat genl ifcfg ifstat ip lnstat nstat routef routel rtacct rtmon rtpr rtstat ss tc

(Narzędzia: omawiane | ważne albo popularne | mocno przestarzałe, mało znane albo zbędne)

Inne narzędzia

  • iputils [1] - narzędzia arping clockdiff ipg ping ping6 rarpd rdisc tftpd tracepath tracepath6 traceroute6
  • traceroute
  • mtr
  • wireshark [2]

Stara instrukcja uruchamiania wiresharka dla osób które używają sudo -i lub sudo -s lub sudo su zamiast su:

  • uruchamianie: na OpenSUSE do prawidłowej pracy wymaga roota
    już nie, w laboratoriach wireshark został skonfigurowany z właściwymi capabilities (man 7 capabilities)
  • jeśli pojawi się błąd: Can't open display:, należy wykonać export DISPLAY=:0
  • jeśli pojawi się błąd: unable to open display :0 lub cannot connect to X server,
    należy z prawami użytkownika student wykonać np. xhost +

Interfejs sieciowy

Karta sieciowa a interfejs sieciowy.

Interface'y można podzielić na fizyczne (reprezentują fizyczne urządzenia sieciowe) i wirtualne (reszta).

Wyświetlanie listy urządzeń i adresów

Lista aktywnych urządzeńifconfigip link show up
Lista wszystkich urządzeńifconfig -aip link [show]
Lista adresówifconfig [-a]ip address [show [up]]

Wszystkie argumenty polecenia ip można dowolnie skracać, ale jeśli skróty kolidują, narzędzie wybiera jedno rozwinięcie zamiast wyświetlić komunikat o błędzie (sic!).
Np. ip link show można zapisać jako ip l sh, ale ip l s jest już traktowane jako ip link set

Tradycyjne nazwy urządzeń (zwykle zakończone numerem)

Tradycyjne nazwy urządzeń:

  • loopback lo
  • przewodowe karty sieciowe eth
  • bezprzewodowe karty sieciowe wlan, ath, wifi, radio
  • firewire, infiniband ib
  • urządzenia wirtualne, mostki, tunele etc. veth, dummy; br, tun, tap; sit, tnl, ppp, vpn, gre

Około 2015 roku w systemie Linux zmieniono sposób nadawania nazw urządzeniom.
Stąd można spotkać nazwy: eno1, sls1, wwp2s0, wlx78e7d1ea46da

Wcześniej to, która karta sieciowa dostanie który numer (eth0, eth1) było trudne do przewidzenia (ale stałe dla danej konfiguracji sprzętowej).
Co gorsza, kolejność po dodaniu nowej karty sieciowej lub awarii jednej z kart mogła ulec zmianie.
Więcej szczegółów: [1] [2]

Ustawianie adresów IP

Sprawdzanie łączności IP

  • ping <cel>
  • traceroute {-I|-T} <cel> Z uwagi na firewall Politechniki proszę używać opcji -I lub -T, która go skutecznie omija
  • mtr <cel>

Jako cel można podać adres IP (np. ping 150.254.30.29) lub nazwę słowną (przykładowo: ping cs.put.poznan.pl, ping lab-net-1)

Włączanie / wyłączanie interfejsu

włączenie interfejsu ifconfig eth0 up ip link set dev eth0 up
wyłączenie interfejsu ifconfig eth0 down ip link set dev eth0 down

Ustawianie / dodawanie / usuwanie adresów IP

Inne podejście w net-tools i w iproute2 - ifconfig dla jednego urządzenia przydziela tylko jeden adres IPv4.

ip address

Dodanie nowego adresu do interfejsu ip addr add 10.0.0.1/25 dev eth0
Usunięcie adresu z interfejsu ip addr del 10.0.0.1/25 dev eth0
Wyczyszczenie adresów interfejsu (groźne) ip addr flush dev eth0

Uwaga! Każdy adres bez maski polecenie ip interpretuje jako adres z maską /32

ifconfig

Zmiana bieżącego adresu ifconfig eth0 [10.0.0.1] [netmask 255.255.255.128]
Dodanie nowego adresu do urządzenia
(tworząc alias urządzenia)
ifconfig eth0:something 10.0.0.1
'Usunięcie' dodatkowego adresu do urządzenia
(usunięcie aliasu)
ifconfig eth0:something down

Polecenie ifconfig pozwala na zmianę wielu ustawień naraz, dla przykładu poniższe polecenie ustawi adres i włączy interfejs:
ifconfig dummy0 192.168.0.1 netmask 255.255.255.0 up

Przykładowe wyniki poleceń

ifconfig / ip address

/ # ip a
10: eth0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc noqueue state UP group default qlen 1000
    link/ether da:a8:fb:92:2d:df brd ff:ff:ff:ff:ff:ff link-netnsid 0
    inet 192.168.5.2/30 brd 192.168.5.3 scope link eth0
       valid_lft forever preferred_lft forever
    inet 172.19.67.0/19 brd 172.19.95.255 scope global eth0:1
       valid_lft forever preferred_lft forever
    inet 10.42.0.238/24 scope global eth0
       valid_lft forever preferred_lft forever
    inet6 fe80::d8a8:fbff:fe92:2ddf/64 scope link 
       valid_lft forever preferred_lft forever

/ # ifconfig
eth0      Link encap:Ethernet  HWaddr DA:A8:FB:92:2D:DF  
          inet addr:192.168.5.2  Bcast:192.168.5.3  Mask:255.255.255.252
          inet6 addr: fe80::d8a8:fbff:fe92:2ddf/64 Scope:Link
          UP BROADCAST RUNNING MULTICAST  MTU:1500  Metric:1
          RX packets:1326 errors:0 dropped:0 overruns:0 frame:0
          TX packets:1063 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:1000 
          RX bytes:2681637 (2.5 MiB)  TX bytes:123670 (120.7 KiB)

eth0:1    Link encap:Ethernet  HWaddr DA:A8:FB:92:2D:DF  
          inet addr:172.19.67.0  Bcast:172.19.95.255  Mask:255.255.224.0
          UP BROADCAST RUNNING MULTICAST  MTU:1500  Metric:1

[Ekstra] Windows

Do wyświetlenia listy interfejsów i adresów IP służy m. inn. komenda ipconfig, domyślnie pokazująca tylko aktywne interfejsy; ipconfig /all pokaże wszystkie.
Adresy IP można ustawić z "okienek". Garść zrzutów z ekranu tutaj: http://www.tp-link.com.pl/faq-14.html
Z linii poleceń należy użyć komendy netsh, kontekstu netsh interface ip https://technet.microsoft.com/en-us/library/bb490943.aspx
Windows dostarcza z systemem programy ping (przełączniki nie są zgodne; patrz ping /?) i tracert.

sk1/podstawy_narzedzia.txt · ostatnio zmienione: 2021/10/13 19:18 przez jkonczak