[ Страница назад | Страница вперед | Содержание | Индекс | Библиотека | Юридическая информация | Поиск ]

Руководство по управлению системой: Сети и средства связи


Определение неполадок TCP/IP

В этом разделе приведена информация о диагностике некоторых неполадок в сетевой среде Протокола управления передачей/Протокола Internet (TCP/IP).

Многие неполадки можно локализовать с помощью команды netstat. После локализации неполадки с помощью этой команды вы можете перейти к более сложным диагностическим средствам. Например, помощью команд netstat -i и netstat -v вы можете определить, что неполадка связана с аппаратным интерфейсом, а затем запустить программу диагностики. Если же команда netstat -s свидетельствует о наличии ошибок протокола, вы можете воспользоваться командой trpt или iptrace.

В данном разделе обсуждаются следующие вопросы:

Неполадки связи

Если вы не можете установить соединение с хостом сети:

Если адрес хоста будет определен, но вам не удается установить соединение с этим хостом, то неполадка вызвана неправильной маршрутизацией. Дополнительная информация приведена в разделе "Неполадки маршрутизации".

Неполадки преобразования имен

Для определения IP-адресов хостов в сети используются следующие средства (в том порядке, в котором они перечислены):

  1. Сервер имен доменов (named)
  2. Служба информации о сети (NIS)
  3. Локальный файл /etc/hosts

Если установлена NIS+, параметры поиска настраиваются с помощью файла irs.conf. Более подробная информация приведена в книге AIX 5L Version 5.1 Network Information Services (NIS and NIS+) Guide.

Хост клиента

Если вам не удается определить IP-адрес по имени хоста и в системе используется простая схема определения IP-адресов (файл /etc/hosts), то проверьте, правильно ли заданы IP-адреса и имена хостов в файле /etc/hosts.

Если вам не удается определить IP-адрес хоста, и при этом применяется сервер имен, то выполните следующие действия:

  1. Проверьте, существует ли файл resolv.conf, и заданы ли в нем имя локального домена и IP-адрес сервера имен.
  2. Проверьте связь с локальным сервером имен с помощью команды ping, указав в ней IP-адрес сервера имен из файла resolv.conf.
  3. Если локальный сервер имен отвечает на команду ping, то проверьте, запущен ли на сервере имен демон named. Для этого нужно выполнить на сервере имен команду lssrc -s named.
  4. Если запущен syslogd, то проверьте сообщения из протокола. Имя файла вывода, в который помещаются такие сообщения, указано в файле /etc/syslog.conf.

Если после выполнения всех указанных действий вам не удалось локализовать неполадку, то, скорее всего, неполадка вызвана неправильной работой сервера имен.

Хост сервера имен

Если вам не удается определить IP-адрес хоста:

  1. Проверьте, запущен ли демон named:

    lssrc -s named
    
  2. Убедитесь, что в базе данных указан правильный адрес нужного хоста. Отправьте демону named сигнал SIGINT, чтобы он скопировал дамп базы данных и кэш-памяти в файл /var/tmp/named_dump.db. Убедитесь, что адрес, который вы пытаетесь преобразовать, действительно указан в базе данных и в нем нет ошибок.

    При необходимости добавьте или исправьте имена и IP-адреса хостов в файл данных named на главном сервере имен доменов. После этого для повторного считывания информации из файла данных введите следующую команду SRC:

    refresh -s named
    
  3. Проверьте, обрабатываются ли запросы на преобразование имен. Для этого запустите программу named в командной строке и задайте уровень отладки. Допустимы уровни отладки от 1 до 9. Чем выше уровень, тем больше информации заносится в протокол при отладке.

    startsrc -s named -a "-d уровень_отладки"
    
  4. Убедитесь в отсутствии ошибок конфигурации в файлах данных named. Более подробная информация приведена в разделах "Configuring Name Servers", "DOMAIN Data File Format," "DOMAIN Reverse Data File Format," "DOMAIN Cache File Format" и "DOMAIN Local Data File Format" в книге AIX 5L Version 5.1 Files Reference.

    Примечание: Очень часто встречаются ошибки, связанные с неправильным использованием символов . (точка) и @ (коммерческое "а") в файлах данных DOMAIN.

Если внешние пользователи не могут получить доступ к вашим доменам:

Если внешние программы преобразования постоянно запрашивают ваши серверы:

Неполадки маршрутизации

Если вам не удается установить соединение с каким-либо удаленным хостом, рассмотрите следующие ситуации:

Другие возможности по локализации неполадок

Если все перечисленные меры не дали результата, попробуйте включить трассировку демона маршрутизации (routed или gated). Для этого введите команду SRC traceson или отправьте программе-демону сигнал, задающий необходимый уровень трассировки. Сигналы демонов gated и routed приведены в описании этих программ.

Неполадки SRC

Если демон inetd работает правильно, запущены все необходимые службы, но соединение по-прежнему установить не удается, то попробуйте запустить процессы демона inetd в режиме отладки.

  1. Временно остановите демон inetd.

    stopsrc -s inetd
    

    Команда stopsrc останавливает подсистемы; в данном случае, демона inetd.

  2. Добавьте в конец файла syslog.conf строку отладки. Например:

    vi /etc/syslog.conf
    
    1. Добавьте строку "*.debug /tmp/myfile" в конец файла и закройте редактор.
    2. Указанный файл должен существовать (в этом примере - /tmp/myfile). Для создания файла можно воспользоваться командой touch.
  3. Обновите файл:
  4. Запустите демон inetd в режиме отладки.

    startsrc -s inetd -a "-d"
    

    Флаг -d включает отладку.

  5. Попытайтесь установить соединение, чтобы сообщения об ошибке были записаны в файл /tmp/myfile. Например:

    tn bastet
    Соединение...
    Установлено соединение с bastet
    пользователь:>
    Соединение закрыто
    
  6. Попробуйте найти в файле протокола сообщения об ошибке. Например:

    tail -f /tmp/myfile
    

Неполадки telnet и rlogin

Следующая информация может пригодиться при определении причин неполадок, возникающих при выполнении команд telnet и rlogin.

Искажения экрана

Если при работе с полноэкранными приложениями наблюдаются искажения изображения:

  1. Проверьте значение переменной среды TERM с помощью команды:

    env
    
    echo $TERM
    
  2. Убедитесь, что значение переменной TERM соответствует типу вашего терминала.

Отладка telnet

Для отладки telnet можно использовать следующие подкоманды:

display Показывает значения параметров и переключателей.
toggle Переключает режим отображения сетевых данных (шестнадцатеричный или обычный).
toggle опции Показывает внутренние опции процесса telnet.

Отладка демона telnetd

Если демон inetd может запустить службу telnet, но вам по-прежнему не удается установить соединение с помощью команды telnet, то, возможно, ошибка возникла в интерфейсе telnet.

  1. Убедитесь, что telnet применяет правильный тип терминала.
    1. Проверьте значение переменной $TERM на вашем компьютере:

      echo $TERM
      
    2. Проверьте значение переменной $TERM на компьютере, с которым вы пытаетесь установить соединение:

      echo $TERM
      
  2. Воспользуйтесь функциями отладки telnet, введя команду telnet без параметров.

    telnet
    tn>
    
    1. Введите open хост, где хост - это имя компьютера.
    2. Нажмите Ctrl-T для перехода к приглашению tn%gt;.
    3. В приглашении tn> введите debug для перехода в режим отладки.
  3. Попробуйте подключиться к другому компьютеру с помощью интерфейса telnet:

    telnet bastet
    Выполнение запроса...
    Установлено соединение с bastet
    Escape-символ - '^T'.
    

    На экране появится последовательность команд. Например:

    SENT do ECHO
    SENT do SUPPRESS GO AHEAD
    SENT will TERMINAL TYPE (reply)
    SENT do SUPPORT SAK
    SENT will SUPPORT SAK (reply)
    RCVD do TERMINAL TYPE (don't reply)
    RCVD will ECHO (don't reply)
    RCVD will SUPPRESS GO AHEAD (don't reply)
    RCVD wont SUPPORT SAK (reply)
    SENT dont SUPPORT SAK (reply)
    RCVD do SUPPORT SAK (don't reply)
    SENT suboption TELOPT_NAWS Width 80, Height 25
    RCVD suboption TELOPT_TTYPE SEND
    RCVD suboption TELOPT_TTYPE aixterm
    ...
    
  4. Найдите в /etc/termcap или /usr/lib/terminfo определение aixterm. Например:

    ls -a /usr/lib/terminfo
    
  5. Если определение aixterm отсутствует, то добавьте его путем создания файла ibm.ti. Например:

    tic ibm.ti
    

    Команда tic - это компилятор информации о терминале.

Программы, использующие Extended Curses

При выполнении команд rlogin и telnet с программами, использующими Extended Curses, могут возникать неполадки, связанные с функциональными клавишами и клавишами управления курсором. Функциональные клавиши и клавиши управления курсором генерируют Escape-последовательности, которые расщепляются в том случае, если на каждую последовательность нажатий клавиш выделяется слишком мало времени. Функция Extended Curses ждет в течение определенного промежутка времени, чтобы определить, на что указывает символ Esc: только на нажатие клавиши Esc, или на начало многобайтовой Escape-последовательности, генерируемой другими клавишами, например, клавиши управления курсором, клавишей действия и функциональными клавишами.

Если после символа Esc в течение заданного времени не поступает никаких данных, или эти данные недопустимы, то функция Curses решает, что этот символ указывает на нажатие клавиши Esc, и последовательность расщепляется. Задержка, возникающая при выполнении команд rlogin и telnet, зависит от сети. Иногда клавиши управления курсором и функциональные клавиши работают, иногда - нет, в зависимости от быстродействия сети. Для устранения этой неполадки увеличьте значение переменной среды ESCDELAY (от 1000 до 1500).

Неполадки конфигурации

Сетевые интерфейсы настраиваются автоматически во время первого запуска системы после установки карты адаптера. Тем не менее, вам все равно придется задать некоторые начальные значения для TCP/IP, включая имя хоста, IP-адрес и маску подсети. Это можно сделать с помощью Web-администратора системы (wsm) или интерфейса SMIT:

Кроме того, вы можете задать статические маршруты, необходимые для отправки хостом информации о передаче - например, маршрут к локальному шлюзу. В этом случае внесите эту информацию в базу данных конфигурации с помощью Web-администратора системы (wsm) или команды быстрого доступа SMIT smit mkroute.

Для устранения других неполадок конфигурации обратитесь к разделу "Справочная таблица по настройке TCP/IP.

Неполадки сетевых интерфейсов

Сетевые интерфейсы настраиваются автоматически при первом запуске системы после установки карты адаптера. Однако перед запуском TCP/IP вы должны будете задать некоторые параметры. Нужно указать имя хоста и IP-адрес. Это можно сделать с помощью Web-администратора системы (wsm) или команды быстрого доступа SMIT smit mktcpip.

Если вы выбрали SMIT, то занесите эти значения в базу данных конфигурации с помощью команды быстрого доступа smit mktcpip. Для изменения этих значений в работающей системе воспользуйтесь командами smit chinet и smit hostname. Команда быстрого доступа smit mktcpip позволяет выполнить минимальную настройку TCP/IP. Для добавления адаптеров перейдите в меню дополнительной конфигурации; это можно сделать с помощью команды быстрого доступа smit tcpip.

Если вы убедились в правильности всех настроек, но по-прежнему сталкиваетесь с неполадками при отправке и приеме информации, то проверьте следующие условия:

Если перечисленные выше действия не помогли устранить неполадку, то обратитесь к разделам "Неполадки сетевого интерфейса SLIP", "Неполадки сетевого интерфейса Ethernet" или "Неполадки сетевого интерфейса Token-Ring".

Неполадки сетевого интерфейса SLIP

В общем случае наиболее эффективный способ устранения неполадок интерфейса Протокола подключения к Internet по последовательной линии (SLIP) заключается в пошаговой проверке конфигурации. Кроме того, вы можете выполнить следующие действия:

Если модем не работает или работает неправильно:

Если не работает или неправильно работает tty, то с помощью команды быстрого доступа smit tty проверьте, правильно ли указаны в базе данных конфигурации быстродействие и другие характеристики модема.

Неполадки сетевого интерфейса Ethernet

Если сетевой интерфейс инициализируется, адреса заданы правильно, и вы проверили исправность карты адаптера, то:

Неполадки сетевого интерфейса Token-Ring

Если вам не удается установить соединение с другими системами сети, но сетевой интерфейс инициализируется, адреса заданы правильно, и вы проверили исправность карты адаптера, то:

Неполадки моста Token Ring/Ethernet

Если вам не удается установить соединение между сетями Token-Ring и Ethernet с помощью моста, и вы проверили исправность моста, то пакеты могут уничтожаться на адаптере Ethernet. Пакеты могут уничтожаться в том случае, если размер поступающего пакета (включая заголовок) превышает размер максимального блока передачи (MTU) для адаптера. Например, к пакету размером 1500 байт, отправленному через мост адаптером Token-Ring, будет добавлен 8-байтовый заголовок управления логическим каналом связи (LLC), что приводит к увеличению размера пакета до 1508 байт. Если размер блока MTU принимающего адаптера Ethernet равен 1500, то пакет будет уничтожен.

Проверьте значения MTU для обоих сетевых адаптеров. Для того чтобы учесть 8-байтовый заголовок LLС, который адаптер Token-Ring добавляет к отправляемым сообщениям, необходимо, чтобы значение MTU для адаптера Token-Ring было по крайней мере на 8 байт меньше значения MTU для адаптера Ethernet. Например, чтобы установить соединение между адаптером Token-Ring и адаптером Ethernet с MTU, равным 1500, значение MTU для этого адаптера Token-Ring должно быть равно 1492.

Неполадки моста Token-Ring/Token-Ring

При соединении через мост максимальный размер блока передачи (MTU), равный по умолчанию 1500, должен быть заменен значением, которое на 8 байт меньше, чем максимальный размер информационного поля (I-кадра), указываемый мостом в поле управления маршрутизацией.

Для того чтобы узнать значение поля управления маршрутизацией, просмотрите получаемые пакеты с помощью демона iptrace. Биты 1, 2 и 3 первого байта задают максимальный размер кадра, т.е. максимальный размер информационного поля, которое может быть передано по определенному маршруту между двумя станциями. Формат поля управления маршрутизацией показан на следующем рисунке:

Рис. 3-24. Поле управления маршрутизацией. На рисунке показаны байты 0 и 1 поля управления маршрутизацией. Восемь битов байта 0 равны B, B, B, B, L, L, L, L. Восемь битов байта 1 равны D, F, F, F, r, r, r, r.

Рисунок comma2

Возможны следующие сочетания значений битов:

000 Задает максимальный размер информационного поля, равный 516 байтам.
001 Задает максимальный размер информационного поля, равный 1500 байтам.
010 Задает максимальный размер информационного поля, равный 2052 байтам.
011 Задает максимальный размер информационного поля, равный 4472 байтам.
100 Задает максимальный размер информационного поля, равный 8144 байтам.
101 Зарезервировано.
110 Зарезервировано.
111 Используется при рассылке кадров по всем маршрутам.

Например, если в поле управления маршрутизацией задан максимальный размер информационного кадра, равный 2052, то размер блока MTU должен быть равен 2044. Это относится только к сетевым интерфейсам Token-Ring.

Примечание: При использовании iptrace, файл вывода не должен находиться в сетевой файловой системе (NFS).

Неполадки доставки пакетов

Связь с удаленным хостом

Если вы не можете установить соединение с удаленным хостом, попытайтесь выполнить следующие действия:

Если наблюдается потеря пакетов или задержки при передаче данных, то попробуйте предпринять следующие меры:

Если вам не удается установить соединение между сетями Token-Ring и Ethernet с помощью моста и вы проверили исправность моста, то выполните следующие действия:

Ответ демона snmpd на запросы

Если демон snmpd не отвечает на запросы, и при этом протокол сообщений пуст, то причина может заключаться в том, что размер пакета слишком велик для обработчика пакетов протокола пользовательских дейтаграмм (UDP) ядра. В этом случае увеличьте переменные ядра udp_sendspace и udp_recvspace с помощью команд:

no -o udp_sendspace=64000
no -o udp_recvspace=64000

Максимальный размер пакета UDP равен 64 Kб. Если размер запроса превышает 64 Kб, то запрос будет аннулирован. Для устранения этой неполадки пакет должен быть разбит на несколько небольших пакетов.

Неполадки протокола динамической настройки хостов (DHCP)

Если вашему хосту не удается получить IP-адрес или другие параметры конфигурации:


[ Страница назад | Страница вперед | Содержание | Индекс | Библиотека | Юридическая информация | Поиск ]