IBM®
Перейти к тексту
    в России и странах СНГ [изменить]    Условия использования
 
 
   
    Главная страница    Продукты    Услуги и решения    Поддержка и загрузка    Мой профиль    
Перейти к тексту

developerWorks Россия  >  Linux  >

Подготовка к сдаче экзамена LPI: Конфигурирование сети

Intermediate Level Administration (LPIC-2) тема 205

developerWorks
На предыдущую страницуСтраница 4 из 7 На предыдущую страницу

Опции документа

Обсудить


Выскажите мнение об этом учебном пособии

Помогите нам улучшить содержание


Сложная настройка сети и разрешение проблем

О сетевых утилитах

Linux поставляется с набором стандартных утилит, которые вы можете использовать для настройки и разрешения проблем с сетью. Хотя большая часть сетевого кода Linux находится в самом ядре, почти все, что касается поведения сети, можно настроить с помощью утилит командной строки. Многие дистрибутивы поставляются с инструментами более высокого уровня, возможно графическими. Но они могут сделать туже самую работу, что и инструменты командной строки.

Утилита ping

Самый простой способ проверить, имеет ли узел с Linux доступ к IP адресу (или К именованному узлу, в случае настроенных DNS и/или /etc/hosts) состоит в использовании утилиты ping. ping работает на уровне IP и не полагается на канальный уровень как TCP или UDP. ping вместо них использует протокол Internet Control Message Protocol (ICMP). Если вы не можете достичь узла с помощью ping, то почти наверняка вы не сможете с ним связаться и с помощью других инструментов, поэтому ping всегда является первым шагом в установлении возможности подключения к узлу (man ping может предоставить описание параметров команды).

По умолчанию, ping посылает сообщение каждые две секунды до тех пор, пока не будет прервана ее работа, однако вы можете изменить время, ограничить число сообщений и подробности вывода. Во время работы ping выводит время путешествия пакета и число потерянных пакетов, но в большинстве случаев вы либо сможете получить ответ от узла, либо нет.В Листинге 8 приведены некоторые примеры:


Листинг 8. Работа ping с локальными и нелокальными узлами
                    
$ ping -c 2 -i 2 google.com
PING google.com (216.239.37.99): 56 data bytes
64 bytes from 216.239.37.99: icmp_seq=0 ttl=237 time=43.861 ms
64 bytes from 216.239.37.99: icmp_seq=1 ttl=237 time=36.956 ms

--- google.com ping statistics ---
2 packets transmitted, 2 packets received, 0% packet loss
round-trip min/avg/max = 36.956/40.408/43.861 ms

$ ping 192.168.2.102
PING 192.168.2.102 (192.168.2.102): 56 data bytes
64 bytes from 192.168.2.102: icmp_seq=0 ttl=255 time=4.64 ms
64 bytes from 192.168.2.102: icmp_seq=1 ttl=255 time=2.176 ms
^C
--- 192.168.2.102 ping statistics ---
2 packets transmitted, 2 packets received, 0% packet loss
round-trip min/avg/max = 2.176/3.408/4.64 ms
		



В начало


Утилита iconfig

Сетевые интерфейсы настраиваются с помощью инструмента ifconfig. Обычно она запускается как часть процесса инициализации, но в некоторых случаях интерфейсы могут быть модифицированы и настроены позже (особенно при отладке). Если вы запустите ifconfig без ключей, то увидите отображение текущего сетевого статуса. Вы можете использовать ifconfig <interface> up и ifconfig <interface> down, чтобы запустить и остановить сетевые интерфейсы. Некоторые ключи изменяют формат отображения или ограничивают вывод только для конкретных интерфейсов. В man ifconfig можно узнать подробности.

Дополнительная информация может выглядеть как в Листинге 9:


Листинг 9. Использование ifconfig для просмотра информации о сетевых интерфейсах
                    
$ ifconfig
eth0  Link encap:Ethernet  HWaddr 00:12:F0:21:4C:F8
      inet addr:192.168.2.103  Bcast:192.168.2.255  Mask:255.255.255.0
      inet6 addr: fe80::212:f0ff:fe21:4cf8/64 Scope:Link
      UP BROADCAST RUNNING MULTICAST  MTU:1500  Metric:1
      RX packets:540 errors:0 dropped:0 overruns:0 frame:0
      TX packets:233 errors:0 dropped:0 overruns:0 carrier:1
      collisions:0 txqueuelen:1000
      RX bytes:49600 (48.4 KiB)  TX bytes:42067 (41.0 KiB)
      Interrupt:21 Base address:0xc000 Memory:ffcfe000-ffcfefff

ppp0  Link encap:Point-Point Protocol
      inet addr:10.144.153.104  P-t-P:10.144.153.51 Mask:255.255.255.0
      UP POINTOPOINT RUNNING  MTU:552  Metric:1
      RX packets:0 errors:0 dropped:0 overruns:0
      TX packets:0 errors:0 dropped:0 overruns:0


lo    Link encap:Local Loopback
      inet addr:127.0.0.1  Mask:255.0.0.0
      inet6 addr: ::1/128 Scope:Host
      UP LOOPBACK RUNNING  MTU:16436  Metric:1
      RX packets:4043 errors:0 dropped:0 overruns:0 frame:0
      TX packets:4043 errors:0 dropped:0 overruns:0 carrier:0
      collisions:0 txqueuelen:0
      RX bytes:368044 (359.4 KiB)  TX bytes:368044 (359.4 KiB)
		

В этом листинге видно, что настроено две сети, одна Ethernet и одна PPP (и еще присутствует повсеместный локальный интерфейс loopback). В других случаях у вас может быть настроено несколько интерфейсов Ethernet или других типов интерфейсов. Если это так, то говорят, что системасильно связана.



В начало


Утилита netstat

Утилиты Linux могут иметь схожий функционал. Инструмент netstat отображает информацию, которую также можно получить у нескольких утилит, как ifconfig и route. Вы также можете узнать общую расширенную статистику о сетевой активности. Например:


Листинг 10. Отчет сетевой статистики
                    
$ netstat -s
Ip:
    12317 total packets received
    0 forwarded
    0 incoming packets discarded
    12255 incoming packets delivered
    11978 requests sent out
Icmp:
    1 ICMP messages received
    0 input ICMP message failed.
    ICMP input histogram:
       echo replies: 1
    0 ICMP messages sent
    0 ICMP messages failed
    ICMP output histogram:
Tcp:
    7 active connections openings
    5 passive connection openings
    0 failed connection attempts
    0 connection resets received
    3 connections established
    11987 segments received
    11885 segments send out
    0 segments retransmitted
    0 bad segments received.
    3 resets sent
Udp:
    101 packets received
    0 packets to unknown port received.
    0 packet receive errors
    92 packets sent
TcpExt:
    1 TCP sockets finished time wait in fast timer
    1490 delayed acks sent
    Quick ack mode was activated 5 times
    3632 packets directly queued to recvmsg prequeue.
    126114 of bytes directly received from backlog
    161977 of bytes directly received from prequeue
    1751 packet headers predicted
    3469 packets header predicted and directly queued to user
    17 acknowledgments not containing data received
    4696 predicted acknowledgments
    0 TCP data loss events
		



В начало


Другие утилиты

Есть также другие утилиты, о которых вы должны знать при настройке сети. Как обычно соответствующие им man-страницы содержат полную информацию по их использованию. Подробно они обсуждаются в седьмом руководстве по теме 214, которая рассматривает вопросы разрешения проблем, этой серии руководств.

tcpdump позволяет отслеживать все пакеты, которые проходят через сетевые интерфейсы, опционально можно ограничиться определенными интерфейсами или произвести фильтрацию по различным критериям. Часто такой отчет, который потом обрабатывается текстовыми утилитами, полезен при диагностике проблемы сети. Например, вы можете исследовать пакеты, которые приходят от конкретного удаленного узла.

lsofвыводит список всех открытых файлов в работающей Linux системе. Но в частности, вы можете использовать опцию lsof -i, чтобы просмотреть только псевдофайлы на наличие определенного IP соединния и вообще все сетевые соединения. Например:


Листинг 11. Использование lsof для просмотра псевдофайлов на наличие соединений
                    
$ lsof -i
        COMMAND    PID USER   FD   TYPE DEVICE SIZE NODE
                NAME
        vino-serv 7812  dqm   33u  IPv4  12824
                TCP *:5900 (LISTEN)
        gnome-cup 7832  dqm   18u  IPv4  12865
                TCP localhost.localdomain:32771->localhost.localdomain:ipp (ESTABLISHED)
        telnet    8909  dqm    3u  IPv4  15771
                TCP 192.168.2.103:32777->192.168.2.102:telnet (ESTABLISHED)
		

nc и netcat -- это псевдонимы. netcat это простая утилита UNIX, которая читает и пишет данные по сети, используя протокол TCP или UDP. Это "back-end" инструмент, который можно использовать в других программах или скриптах. Во многих отношениях netcat похожа на telnet, но более гибка в плане работы с UDP и пересылке двоичных данных.



В начало



На предыдущую страницуСтраница 4 из 7 На предыдущую страницу
    IBM в России Конфиденциальность Контакты