Введение в администрирование UNIX/Сетевые средства UNIX: различия между версиями

Содержимое удалено Содержимое добавлено
→‎Конфигурация IP-сетей: орфография, пунктуация
м <source> -> <syntaxhighlight> (phab:T237267)
 
Строка 88:
Пример 4.1. Пример выполнения команды ifconfig
 
<sourcesyntaxhighlight lang='bash'>
desktop ~ # ifconfig eth0
eth0 Link encap:Ethernet HWaddr 00:0D:60:8D:42:AA
Строка 106:
collisions:0 txqueuelen:0
RX bytes:14636 (14.2 Kb) TX bytes:14636 (14.2 Kb)
</syntaxhighlight>
</source>
 
Создание сетевого интерфейса производится в момент загрузки драйвера сетевой карты или создания логического соединения (например, в PPP). Настройка сетевых параметров, связанных с интерфейсом производится той же командой ifconfig, о чем будет сказано далее.
Строка 126:
Для установления связи между интерфейсом и IP-адресом необходимо выполнить команду:
 
<sourcesyntaxhighlight lang='bash'>desktop ~ # ifconfig eth0 192.168.1.1 up</sourcesyntaxhighlight>
 
Маршрутизация
Строка 138:
Пример 4.2. Пример выполнения команды route
 
<sourcesyntaxhighlight lang='bash'>
desktop ~ # route -n
Kernel IP routing table
Строка 145:
127.0.0.0 0.0.0.0 255.0.0.0 U 0 0 0 lo
0.0.0.0 192.168.1.1 0.0.0.0 UG 0 0 0 eth0
</syntaxhighlight>
</source>
 
Компьютер или аппаратное устройство, осуществляющее маршрутизацию между локальной сетью и Internet обычно называется шлюзом.
Строка 162:
Пример 4.3. Пример выполнения команды traceroute
 
<sourcesyntaxhighlight lang='bash'>
desktop ~ # traceroute ya.ru
traceroute to ya.ru (213.180.204.8), 64 hops max, 40 byte packets
Строка 170:
4 c3-vlan4.yandex.net (213.180.210.146) 3.412 ms 2.698 ms 2.654 ms
5 ya.ru (213.180.204.8) 2.336 ms 2.612 ms 3.482 ms
</syntaxhighlight>
</source>
 
Утилита traceroute показывает список абонентов, через которых проходит пакет по пути к адресату, и потраченное на это время. Однако список этот приблизительный. Строго говоря, неизвестно, каким маршрутом шла очередная группа пакетов, потому что с тех пор, как посылалась предыдущая группа, какой-нибудь из промежуточных маршрутизаторов мог передумать и послать новые пакеты другим путем.
Строка 191:
Пример 4.4. Пример выполнения команды netstat
 
<sourcesyntaxhighlight lang='bash'>
desktop ~ # netstat -an
Active Internet connections (servers and established)
Строка 205:
udp 0 0 0.0.0.0:32769 0.0.0.0:*
udp 0 0 0.0.0.0:111 0.0.0.0:*
</syntaxhighlight>
</source>
 
Настройка сети при загрузке системы
Строка 362:
:Команда ifconfig используется для настройки сетевых интерфейсов. Команда должна использоваться при загрузке системы для настройки адресов каждого сетевого интерфейса, а также может использоваться после загрузки для изменения параметров сетевых интерфейсов. Если команда введена без аргументов, ifconfig выдает информацию о состоянии активных интерфейсов. Если в качестве аргумента указан какой-либо интерфейс, то выдается информация только о состоянии этого интерфейса; если указан один аргумент -a, выдается информация о состоянии всех интерфесов, даже отключенных. Пример:
 
<sourcesyntaxhighlight lang='bash'>
user@desktop$ ifconfig rl0
rl0: flags=8843<UP,BROADCAST,RUNNING,SIMPLEX,MULTICAST> mtu 1500
Строка 371:
media: Ethernet autoselect (100baseTX <full-duplex>)
status: active
</syntaxhighlight>
</source>
 
:Иначе команда конфигурирует указанный интерфейс. Изменить настройки какого-либо интерфейса может только суперпользователь.
Строка 394:
:Пример. изменение IP-адреса интерфейса rl0:
 
<sourcesyntaxhighlight lang='bash'>
user@desktop ~ $ ifconfig rl0
rl0: flags=8843<UP,BROADCAST,RUNNING,SIMPLEX,MULTICAST> mtu 1500
Строка 412:
media: Ethernet autoselect (100baseTX <full-duplex>)
status: active
</syntaxhighlight>
</source>
 
;arp:Команда arp отображает ARP-таблицу данного хоста. С помощью параметра -i можно специфицировать сетевой интерфейс, информация о котором интересует.
 
<sourcesyntaxhighlight lang='bash'>
desktop ~ # arp -i eth0
Address HWtype HWaddress Flags Mask Iface
DIMON.mshome.net ether 00:50:BF:12:8A:9E C eth0
</syntaxhighlight>
</source>
 
:Таблица с информацией о канальном уровне содержит связь IP- и MAC-адресов. При использовании параметра -n IP-адреса не будут заменяться символьными именами хостов.
Строка 428:
:Пример обычной таблицы маршрутизации для отдельного компьютера в сети:
 
<sourcesyntaxhighlight lang='bash'>
desktop ~ # route -n
Kernel IP routing table
Строка 435:
127.0.0.0 0.0.0.0 255.0.0.0 U 0 0 0 lo
0.0.0.0 192.168.5.254 0.0.0.0 UG 0 0 0 eth1
</syntaxhighlight>
</source>
 
:Особый интерес представляет адрес 0.0.0.0, который соответствует хосту назначения по умолчанию.
Строка 441:
:Для добавление нового маршрута к определённому хосту используются параметры add и -host:
 
<sourcesyntaxhighlight lang='bash'>
desktop ~ # route add -host 192.168.0.1 eth0
</syntaxhighlight>
</source>
 
:Эта команда создаёт новую строку в таблице маршрутизации, согласно которой все пакетыы к узлу 192.168.0.1 должны отправляться в сетевой интерфейс eth0.
Строка 449:
:Также можно добавлять шлюз для отправки пакетов в определённую сеть или к хосту:
 
<sourcesyntaxhighlight lang='bash'>
desktop ~ # route add -net 192.168.1.0 gw 192.168.0.5
</syntaxhighlight>
</source>
 
:Таким образом, все пакеты для сети 192.168.1.0 будут направляться на узел 192.168.0.5.
Строка 457:
:Аналогично, маршруты удаляются параметром del с указанием всей информации о маршруте:
 
<sourcesyntaxhighlight lang='bash'>
desktop ~ # route del default gw 192.168.0.1
</syntaxhighlight>
</source>
 
:Эта команда удаляет маршрут по умолчанию через хост 192.168.0.1.
Строка 475:
:Для проверки наличия хоста в сети достаточно ввести команду ping с аргументом - именем или адресом хоста:
 
<sourcesyntaxhighlight lang='bash'>
user@desktop$ ping yandex.ru
64 bytes from 213.180.204.11: icmp_seq=0 ttl=48 time=5.659 ms
Строка 484:
3 packets transmitted, 3 packets received, 0% packet loss
round-trip min/avg/max/stddev = 4.889/5.317/5.659/0.320 ms
</syntaxhighlight>
</source>
 
:Для отправки определенного числа пакетов необходимо указать опцию -c число_пакетов. Для установки интервала между отправкой пакетов используется опция -i секунд.
Строка 492:
:Пример следования пакетов до хоста ya.ru:
 
<sourcesyntaxhighlight lang='bash'>
desktop ~ # traceroute ya.ru
traceroute to ya.ru (213.180.204.8), 64 hops max, 40 byte packets
Строка 500:
4 c3-vlan4.yandex.net (213.180.210.146) 3.412 ms 2.698 ms 2.654 ms
5 ya.ru (213.180.204.8) 2.336 ms 2.612 ms 3.482 ms
</syntaxhighlight>
</source>
 
;netstat:Команда используется для показа состояния сети.
Строка 525:
:Пример. показ таблицы маршрутизации:
 
<sourcesyntaxhighlight lang='bash'>
user@desktop ~$ netstat -r
Routing tables
Строка 550:
ff02::%rl0 link#3 UC rl0
ff02::%lo0 localhost.prov.ru UC lo0
</syntaxhighlight>
</source>
 
;host:Команда host служит для получения доменной информации о хосте: IP-адрес, MX-записи и другой информации, связанной с данным символьным именем. Имя хоста указывается в качестве аргумента команды.
Строка 556:
:Пример работы команды:
 
<sourcesyntaxhighlight lang='bash'>
user@desktop ~$ host yandex.ru
yandex.ru has address 213.180.204.11
yandex.ru mail is handled by 10 mx2.yandex.ru.
yandex.ru mail is handled by 0 mx1.yandex.ru.
</syntaxhighlight>
</source>
 
:Вторым аргументом можно указать DNS-сервер, который будет использоваться при получении этой информации:
 
<sourcesyntaxhighlight lang='bash'>
user@desktop ~$ host yandex.ru ns1.aiya.ru
Using domain server:
Строка 585:
yandex.ru mail is handled by 0 mx1.yandex.ru.
yandex.ru mail is handled by 10 mx2.yandex.ru.
</syntaxhighlight>
</source>
 
;tcpdump:Команда tcpdump используется для мониторинга сети на канальном и более высоких уровнях. Программа «слушает» на одним или нескольких сетевых интерфейсах и выводит дамп пакетов, проходящих через этот интерфейс.
Строка 591:
:Параметр -i задаёт имя сетевого интерфейса, на котором запускается прослушивание. При просмотре захватываемых данных удобно использовать ключ -l, который буферезует вывод построчно. Для этой команды также работает параметр -n, при использовании которого IP-адреса не будут заменяться символьными именами хостов. Пример работы команды:
 
<sourcesyntaxhighlight lang='bash'>
desktop ~ # tcpdump -i eth0 -l -n
tcpdump: verbose output suppressed, use -v or -vv for full protocol decode
Строка 599:
12:51:14.457608 IP 192.168.5.23.56385 > 194.91.250.11.443: P 3645922938:3645923156(218) ack 2092518729 win 10086
12:51:14.491343 IP 194.91.250.11.443 > 192.168.5.23.56385: . ack 218 win 10720
</syntaxhighlight>
</source>
 
:Для вывода расширенной информации о пакетах исплюзуются ключи -v или -vv.
 
<sourcesyntaxhighlight lang='bash'>
desktop ~ # tcpdump -i eth1 -l -n -vv
tcpdump: listening on eth1, link-type EN10MB (Ethernet), capture size 96 bytes
Строка 616:
ack 3645927446 win 10720
...
</syntaxhighlight>
</source>
 
:Команда tcpdump обладает очень богатым интерфейсом, включающем условные выражения, по которым должны выделяться интересующие пакеты. Например, можно использовать условия удалённого порта (равно 80):
 
<sourcesyntaxhighlight lang='bash'>
desktop ~ # tcpdump -i eth1 -l -n -vv dst port 80
tcpdump: listening on eth1, link-type EN10MB (Ethernet), capture size 96 bytes
Строка 632:
length: 627) 192.168.5.23.52348 > 213.180.204.11.80: P 0:587(587) ack 1 win 5840
...
</syntaxhighlight>
</source>
 
;nmap:Команда nmap – сетевой сканер, с помощью которого можно определить уязвимость удалённых хостов. Основное назначение этой программы – определение состояние портов удалённого хоста (закрыты они, открыты или заблокированны). Также программа может на основании собственной базы знаний определить по поведению удалённого хоста, какая операционная система запущена на нём.