Руководство по Ubuntu Server


Глава 3. Управление пакетами



Pdf просмотр
страница2/16
Дата17.11.2016
Размер1.78 Mb.
Просмотров3742
Скачиваний3
ТипРуководство
1   2   3   4   5   6   7   8   9   ...   16
Глава 3. Управление пакетами
Ubuntu содержит всеобъемлющую систему управления пакетами для установки, обновления, настройки и удаления программ. Помимо обеспечения доступа к упорядоченной базе из более 35000 пакетов программного обеспечения для Ubuntu, система управления пакетами также содержит средства разрешения зависимостей и проверки наличия обновлений программ.
Есть несколько программ для работы с системой управления пакетами
Ubuntu, начиная с простых консольных утилит, использование которых может быть легко автоматизировано администраторами системы, до простых в использовании программ с графическим интерфейсом, более подходящих для новичков в Ubuntu.

Управление пакетами
25
1. Введение
Система управления пакетами создана на основе подобной системы,
используемой в дистрибутиве Debian GNU/Linux. Файлы пакетов содержат все необходимые файлы, метаданные и инструкции, чтобы обеспечить использование специфических функций или программного приложения на вашем компьютере под управлением Ubuntu.
Файлы пакетов Debian обычно имеют расширение '.deb' и, как правило,
содержатся в репозиториях — коллекциях пакетов, которые можно найти на различных носителях, таких как диски CD-ROM, или в Интернете.
Пакеты обычно заранее скомпилированы в двоичный формат, поэтому устанавливаются быстро и не требуют выполнения компиляции.
Многие сложные пакеты используют концепцию зависимостей.
Зависимости — это дополнительные пакеты, необходимые основному пакету для нормальной работы. Например, пакет синтезатора речи festival зависит от пакета libasound2, предоставляющего звуковую библиотеку
ALSA, необходимую для воспроизведения звука. Чтобы festival заработал,
необходимо установить его и все его зависимости. Средства управления программами в Ubuntu делают это автоматически.

Управление пакетами
26
2. dpkg
dpkg — это менеджер пакетов для систем, основанных на Debian. Он может устанавливать, удалять и собирать пакеты, но в отличие от других систем управления пакетами, не может автоматически скачивать и устанавливать пакеты или их зависимости. В этом разделе рассматривается применение dpkg для управления локально установленными пакетами:
• Чтобы увидеть список всех установленных в системе пакетов, наберите в приглашении терминала:
dpkg -l
• В зависимости от количества пакетов в вашей системе, вывод данных может быть очень большим. Перенаправьте вывод через grep, чтобы узнать, установлен ли определённый пакет:
dpkg -l | grep apache2
Замените apache2 на любое имя пакета, часть имени пакета или любое допустимое выражение.
• Для получения списка файлов, установленных пакетом, в данном случае ufw, введите:
dpkg -L ufw
• Если вы не уверены, какой пакет установил файл, dpkg -S поможет вам узнать это. Например:
dpkg -S /etc/host.conf
base-files: /etc/host.conf
Вывод покажет вам, что
/etc/host.conf принадлежит пакету base-files.
Многие файлы генерируются автоматически в процессе установки пакета и, хотя они находятся в файловой системе, dpkg -S может не знать, какому пакету они принадлежат.
• Вы можете установить локальный .deb-файл, введя:
sudo dpkg -i zip_3.0-4_i386.deb
Замените zip_3.0-4_i386.deb на реальное имя локального .deb-файла,
который вы хотите установить.
• Удаление пакета может быть выполнено так:

Управление пакетами
27
sudo dpkg -r zip
Устанавливать пакеты с помощью dpkg в большинстве случаев
НЕ РЕКОМЕНДУЕТСЯ. Лучше воспользоваться менеджером пакетов, который обрабатывает зависимости, чтобы исключить возможность возникновения несогласованностей в системе.
Например, dpkg -r zip удалит пакет zip, но все пакеты, от которых он зависит, останутся установленными и могут в дальнейшем функционировать неправильно.
О других опциях dpkg смотрите руководство: man dpkg.

Управление пакетами
28
3. Apt-Get
Команда apt-get — это мощный инструмент командной строки, который работает с Ubuntu Advanced Packaging Tool (APT), выполняя такие действия,
как установка новых пакетов программ, обновление существующих пакетов, обновление индекса списка пакетов и даже полное обновление всей системы Ubuntu.
Являясь простым инструментом командной строки, apt-get имеет множество преимуществ над другими инструментами управления пакетами в Ubuntu для администраторов серверов. Некоторыми из этих преимуществ являются простота работы через SSH и возможность использования в сценариях администрирования системы, которые, в свою очередь, можно автоматизировать с помощью утилиты планировщика cron.
Несколько примеров использования apt-get:
Установка пакета: устанавливать пакеты с помощью apt-get очень просто. Например, чтобы установить сетевой сканер nmap, наберите:
sudo apt-get install nmap
Удаление пакета: удалить пакет (или несколько пакетов) тоже просто.
Чтобы удалить пакет, установленный в предыдущем примере, наберите:
sudo apt-get remove nmap
Несколько пакетов: Вы можете указать сразу несколько пакетов для установки или удаления, разделив их названия пробелами.
При добавлении опции --purge к apt-get remove будут также удалены конфигурационные файлы пакета. Это может быть, а может и не быть нужным вам эффектом, так что используйте эту опцию с осторожностью.
Обновление индекса пакетов: индекс пакетов APT — это база данных пакетов, доступных из репозиториев, указанных в файле
/
etc/apt/sources.list и каталоге
/etc/apt/sources.list.d
. Чтобы обновить локальный индекс пакетов, согласовав его с последними изменениями в репозиториях, наберите следующее:
sudo apt-get update
Обновление пакетов: через какое-то время в репозиториях могут стать доступными обновлённые версии установленных на вашем компьютере пакетов (например, обновления, связанные с безопасностью). Чтобы

Управление пакетами
29
обновить систему, в первую очередь обновите индекс пакетов, как показано выше, и после этого наберите:
sudo apt-get upgrade
Информацию по переходу на новый релиз Ubuntu смотрите в Раздел 3,
«Обновление» [10].
Действия команды apt-get, такие как установка и удаление пакетов,
сохраняются в файле журнала /var/log/dpkg.log
Для дополнительной информации об использовании APT прочтите подробное Руководство пользователя Debian APT
1
или наберите в терминале:
apt-get help
1
http://www.debian.org/doc/user-manuals#apt-howto

Управление пакетами
30
4. Aptitude
Запуск Aptitude без параметров предоставит вам текстовый интерфейс с меню для доступа к системе Advanced Packaging Tool (APT). Множество общих функций управления пакетами, такие как установка, удаление и обновление, могут быть выполнены в Aptitude однобуквенной командой,
набранной обычно в нижнем регистре.
Aptitude лучше всего подходит для терминального окружения без графики,
чтобы убедиться в правильном функционировании ключевых команд. Вы можете запустить интерфейс Aptitude с меню под обычным пользователем,
введя следующую команду в терминале:
sudo aptitude
Когда Aptitude запускается, вы можете видеть строку меню вверху экрана и две панели под ней. Верхняя панель содержит категории пакетов, такие как Новые пакеты и Неустановленные пакеты. Нижняя панель содержит информацию, касающуюся пакетов и категорий пакетов.
Использование Aptitude для управления пакетами является достаточно прямолинейным, а пользовательский интерфейс делает повседневные задачи простыми в выполнении. Вот примеры стандартных функций по управлению пакетами в том виде, в каком они выполняются в Aptitude:
Установка пакетов: Для установки пакета определите его местонахождение в категории Неустановленные Пакеты с использованием клавиш перемещения курсора и клавиши ENTER.
Подсветите желаемый пакет и затем нажмите клавишу +. Название пакета выделится зелёным цветом, означающим, что пакет выбран для установки. Далее нажмите g для получения списка действий над пакетами. Нажмите g еще раз, и вас предупредят о необходимости получения прав суперпользователя. Нажмите ENTER для запроса пароля. Введите ваш пользовательский пароль для получения прав суперпользователя. Наконец, нажмите g ещё раз и вас предупредят о загрузке пакета. Нажмите ENTER в ответ на запрос Продолжить и начнутся загрузка и установка.
Удаление пакетов: Для удаления пакета определите его местонахождение в категории Установленные Пакеты с использованием клавиш перемещения курсора и клавиши ENTER. Подсветите пакет,
который вы хотите удалить и затем нажмите клавишу -. Название пакета выделится розовым цветом, означающим, что он выделен для удаления.
Теперь нажмите g для получения списка действий над пакетами.

Управление пакетами
31
Нажмите g ещё раз, и вас предупредят о необходимости получения прав суперпользователя. Нажмите ENTER для запроса пароля. Введите ваш пользовательский пароль для получения прав суперпользователя.
Наконец, нажмите g ещё раз, а затем ENTER для продолжения, и начнётся удаление пакета.
Обновление индекса пакетов: Для обновления индекса пакетов просто нажмите клавишу u, и вас предупредят о необходимости получения прав суперпользователя. Нажмите ENTER для запроса пароля. Введите ваш пользовательский пароль для получения прав суперпользователя. Начнётся обновление индекса пакетов. Нажмите
ENTER, когда завершится процесс загрузки.
Обновление пакетов: Для обновления пакетов выполните обновление индекса пакетов, как показано выше, и затем нажмите клавишу U,
чтобы отметить все пакеты к обновлению. Теперь нажмите g для просмотра действий над пакетами. Нажмите g снова и вас предупредят о необходимости получения прав суперпользователя. Нажмите ENTER для запроса пароля. Введите ваш пользовательский пароль для получения прав суперпользователя. Наконец, нажмите g ещё раз и вас предупредят о загружаемых пакетах. Нажмите ENTER для продолжения и начнется обновление пакетов.
Первая колонка, отображаемая в списке пакетов в верхней панели, при непосредственном просмотре пакетов, отображает текущее состояние пакета и использует следующие символы для индикации этого состояния:
i: Установленный пакет
c: Пакет не установлен, но настройки пакета остались в системе
p: Удалён из системы
v: Виртуальный пакет
B: Испорченный пакет
u: Файлы распакованы, однако настройка пакета не закончена
C: Частично настроенные — настройка завершилась неудачей и требует исправления
H: Частично установленные — удаление завершилось неудачей и требует исправления
Чтобы выйти из Aptitude, просто нажмите клавишу q и подтвердите свой выход. Многие другие функции доступны из меню Aptitude, которое доступно по нажатию клавиши F10.

Управление пакетами
32 4.1. Aptitude в командной строке
Aptitude можно использовать и как инструмент командной строки, подобно apt-get. Чтобы установить пакет nmap со всеми зависимостями, как в примере apt-get, нужно ввести следующую команду:
sudo aptitude install nmap
Чтобы удалить тот же пакет, нужно использовать команду:
sudo aptitude remove nmap
Смотрите в man-страницах дополнительные сведения об опциях командной строки Aptitude.

Управление пакетами
33
5. Автоматические обновления
Пакет unattended-upgrades может использоваться для автоматической установки обновлённых пакетов и может быть сконфигурирован на обновление всех пакетов или установку только изменений для безопасности системы. Во-первых, установите пакет, введя в командной строке:
sudo apt-get install unattended-upgrades
Чтобы настроить unattended-upgrades, отредактируйте
/etc/apt/
apt.conf.d/50unattended-upgrades изменив следующие строки так, как вам это необходимо:
Unattended-Upgrade::Allowed-Origins {
"Ubuntu precise-security";
// "Ubuntu precise-updates";
};
Некоторые пакеты могут быть указаны в "чёрном" списке что означает, что они не будут обновляться. Чтобы поместить пакет в "чёрный" список:
Unattended-Upgrade::Package-Blacklist {
// "vim";
// "libc6";
// "libc6-dev";
// "libc6-i686";
};
Двойная косая черта «//» означает комментарий, то есть всё, что находится после "//", не будет обрабатываться.
Чтобы включить автоматические обновления, отредактируйте
/etc/apt/
apt.conf.d/10periodic и задайте соответствующие конфигурационные параметры apt:
APT::Periodic::Update-Package-Lists "1";
APT::Periodic::Download-Upgradeable-Packages "1";
APT::Periodic::AutocleanInterval "7";
APT::Periodic::Unattended-Upgrade "1";
Приведённая выше конфигурация обновляет список пакетов, скачивает и устанавливает доступные обновления каждый день. Локальный архив загрузок очищается каждую неделю.
Вы можете почитать больше о настройках периодичности apt в заголовке сценария /
/etc/cron.daily/apt

Управление пакетами
34
Результаты unattended-upgrades будут занесены в
/var/log/unattended- upgrades
5.1. Уведомления
Настройка Unattended-Upgrade::Mail в
/etc/apt/apt.conf.d/50unattended-upgrades позволит unattended-upgrades сообщать администратору по электронной почте подробности о любых пакетах, нуждающихся в обновлении или имеющих проблемы.
Ещё один полезный пакет — apticron. apticron настраивает задание cron для отправки электронны писем администратору с информацией о любых пакетах в системе, для которых доступны обновления, а также отчётом об изменениях в каждом пакете.
Для установки пакета apticron в терминале введите:
sudo apt-get install apticron
После установки пакета отредактируйте
/etc/apticron/apticron.conf
, чтобы установить адрес электронной почты и другие опции:
EMAIL="root@example.com"

Управление пакетами
35
6. Конфигурация
Настройка системных репозиториев Advanced Packaging Tool (APT)
сохраняется в файле
/etc/apt/sources.list и каталоге
/etc/apt/sources.list.d
Пример такого файла приведен здесь вместе с информацией по добавлению или удалению ссылок на репозитории в этом файле.
Здесь
2
вы можете найти простой пример типичного файла
/etc/apt/
sources.list
Вы можете изменять файл для подключения и отключения репозиториев.
Например, для отключения требования вставить диск Ubuntu во время выполнения операций с пакетами просто закомментируйте строки с соответствующим диском, которые находятся в начале файла:
# no more prompting for CD-ROM please
# deb cdrom:[Ubuntu 12.04 _Precise Pangolin_ - Release i386 (20111013.1)]/ precise main restricted
6.1. Дополнительные репозитории
В дополнение к официально поддерживаемым репозиториям пакетов для Ubuntu существуют дополнительные, поддерживаемые сообществом,
репозитории, которые обеспечивают возможность установки ещё
нескольких тысяч пакетов. Два наиболее популярных — это репозитории
Universe и Multiverse. Эти репозитории официально не поддерживаются
Ubuntu, но, поскольку они поддерживаются сообществом, обычно можно без опасений использовать входящие в них пакеты на компьютере с
Ubuntu.
Пакеты в репозитории Multiverse часто имеют нюансы с лицензиями,
которые не позволяют им распространяться вместе со свободной операционной системой, и их использование может быть незаконным там, где вы находитесь.
Обращаем ваше внимание, что указанные репозитории, Universe
и Multiverse, не содержат официально поддерживаемых пакетов.
В частности, может не существовать необходимых обновлений безопасности для этих пакетов.
Доступно большое количество других источников пакетов, иногда предоставляющих доступ лишь к одному пакету (например, в случае пакета с исходными кодами, предоставляемого разработчиком отдельного приложения). Вы должны быть очень осторожны и внимательны при
2
../sample/sources.list

Управление пакетами
36
использовании нестандартных источников пакетов. Внимательно изучите как источник, так и пакет перед установкой, так как некоторые источники,
и пакеты, предоставляемые ими, могут вызвать нестабильную работу вашей системы или даже полную её неработоспособность.
По умолчанию, репозитории Universe и Multiverse доступны, но если вы хотите отключить их, измените
/etc/apt/sources.list и закомментируйте следующие строки:
deb http://archive.ubuntu.com/ubuntu precise universe multiverse deb-src http://archive.ubuntu.com/ubuntu precise universe multiverse deb http://us.archive.ubuntu.com/ubuntu/ precise universe deb-src http://us.archive.ubuntu.com/ubuntu/ precise universe deb http://us.archive.ubuntu.com/ubuntu/ precise-updates universe deb-src http://us.archive.ubuntu.com/ubuntu/ precise-updates universe deb http://us.archive.ubuntu.com/ubuntu/ precise multiverse deb-src http://us.archive.ubuntu.com/ubuntu/ precise multiverse deb http://us.archive.ubuntu.com/ubuntu/ precise-updates multiverse deb-src http://us.archive.ubuntu.com/ubuntu/ precise-updates multiverse deb http://security.ubuntu.com/ubuntu precise-security universe deb-src http://security.ubuntu.com/ubuntu precise-security universe deb http://security.ubuntu.com/ubuntu precise-security multiverse deb-src http://security.ubuntu.com/ubuntu precise-security multiverse

Управление пакетами
37
7. Ссылки
Большинство материалов, имеющихся в этой главе, также доступны в помощи man, многие из которых также доступны в интернете.
Wiki-страница установки Ubuntu
3
содержит дополнительную информацию.
• Для дополнительной информации по dpkg смотрите страницу
документации man по dpkg
4
APT HOWTO
5
и страница документации man по apt-get
6
содержит полезную информацию по использованию apt-get.
• Смотрите страницу документации man по aptitude
7
для информации о дополнительных опциях.
HOWTO по добавлению репозиториев (Ubuntu Wiki)
8
содержат дополнительную информацию по добавлению репозиториев.
3
https://help.ubuntu.com/community/InstallingSoftware
4
http://manpages.ubuntu.com/manpages/precise/en/man1/dpkg.1.html
5
http://www.debian.org/doc/manuals/apt-howto/
6
http://manpages.ubuntu.com/manpages/precise/en/man8/apt-get.8.html
7
http://manpages.ubuntu.com/manpages/precise/man8/aptitude.8.html
8
https://help.ubuntu.com/community/Repositories/Ubuntu

38
Глава 4. Работа в сети
Сети состоят из двух и более устройств, таких, как компьютерные системы,
принтеры и сопутствующее оборудование, которые соединены при помощи физического кабеля или беспроводными каналами с той целью, чтобы делать общей информацию и распространять её между соединёнными устройствами.
Этот раздел содержит общую и специфическую информацию относительно сетевого взаимодействия, включая обзор концепций сети и детальное обсуждение популярных сетевых протоколов.

Работа в сети
39
1. Настройка сети
Ubuntu поставляется с несколькими графическими инструментами для настройки сетевых устройств. Этот документ рассчитан на продвинутых пользователей и фокусируется на управлении сетью с помощью командной строки.
1.1. Интерфейсы Ethernet
Интерфейсы Ethernet обозначаются в системе как ethX, где X является числом. Первый интерфейс Ethernet обычно обозначается eth0, второй eth1,
и так далее в порядке возрастания чисел.
1.1.1. Определение Ethernet интерфейсов
Для быстрого определения всех доступных сетевых интерфейсов вы можете использовать команду ifconfig, как показано ниже.
ifconfig -a | grep eth
eth0 Link encap:Ethernet HWaddr 00:15:c5:4a:16:5a
Другое приложение, которое может помочь идентифицировать все доступные вашей системе сетевые интерфейсы — это команда lshw . В
приведённом ниже примере lshw показывает один Ethernet интерфейс с логическим именем eth0 вместе с информацией по шине, сведениями о драйвере и всеми поддерживаемыми возможностями.
sudo lshw -class network
*-network description: Ethernet interface product: BCM4401-B0 100Base-TX
vendor: Broadcom Corporation physical id: 0
bus info: pci@0000:03:00.0
logical name: eth0
version: 02
serial: 00:15:c5:4a:16:5a size: 10MB/s capacity: 100MB/s width: 32 bits clock: 33MHz capabilities: (snipped for brevity)
configuration: (snipped for brevity)
resources: irq:17 memory:ef9fe000-ef9fffff

Работа в сети
40 1.1.2. Логические имена интерфейсов Ethernet
Логические имена интерфейсов настраиваются в файле
/etc/udev/rules.d/70- persistent-net.rules
. Если вы захотите определить, какой интерфейс получит определённое логическое имя, найдите строку, соответствующую физическому MAC-адресу интерфейса, и измените значение NAME=ethX
на желаемое логическое имя. Перегрузите систему для применения изменений.
1.1.3. Настройки интерфейса Ethernet ethtool — это программа, которая показывает и изменяет настройки сетевых карт, такие как автосогласование (auto-negotiation), скорость порта, режим дуплекса и функция Wake-on-LAN (пробуждение системы через сеть). Эта программа не устанавливается по умолчанию, но доступна к установке из репозиториев.
sudo apt-get install ethtool
Ниже приведён пример того, как посмотреть возможности карты и настроить параметры интерфейса Ethernet.
sudo ethtool eth0
Settings for eth0:
Supported ports: [ TP ]
Supported link modes: 10baseT/Half 10baseT/Full
100baseT/Half 100baseT/Full
1000baseT/Half 1000baseT/Full
Supports auto-negotiation: Yes
Advertised link modes: 10baseT/Half 10baseT/Full
100baseT/Half 100baseT/Full
1000baseT/Half 1000baseT/Full
Advertised auto-negotiation: Yes
Speed: 1000Mb/s
Duplex: Full
Port: Twisted Pair
PHYAD: 1
Transceiver: internal
Auto-negotiation: on
Supports Wake-on: g
Wake-on: d
Current message level: 0x000000ff (255)
Link detected: yes
Изменения, сделанные с использованием команды ethtool, временные и будут утеряны после перезагрузки. Если вы хотите сохранить настройки,
просто добавьте требуемую команду ethtool в строку pre-up в файле
/etc/
network/interfaces

Работа в сети
41
Ниже приведен пример того, как интерфейс, определённый как eth0,
может быть постоянно настроен на скорость порта 1000 Мб/с в режиме полного дуплекса.
auto eth0
iface eth0 inet static pre-up /sbin/ethtool -s eth0 speed 1000 duplex full
Несмотря на то, что пример выше показывает интерфейс,
настроенный статично, это работает и с другими методами, такими как DHCP. Этот пример призван просто продемонстрировать правильное размещение строки pre-up по отношению к остальной части конфигурационного файла интерфейса.
1.2. Адресация IP
Следующий раздел описывает процесс настройки IP-адреса вашего компьютера и шлюза по умолчанию, необходимых для подключения к локальной сети и интернету.
1.2.1. Временное назначение IP-адреса
Для временной настройки сети вы можете использовать стандартные команды, такие как ip, ifconfig и route, которые присутствуют также и в других системах на базе GNU/Linux. Эти команды позволят изменить настройки, которые будут применены мгновенно, но они не будут постоянными и будут утеряны после перезагрузки.
Для временной настройки IP-адреса вы можете использовать команду ifconfig следующим образом. Только замените IP-адрес и маску подсети на соответствующие требованиям вашей сети.
sudo ifconfig eth0 10.0.0.100 netmask 255.255.255.0
Для проверки настройки IP-адреса eth0 вы можете использовать команду ifconfig таким образом:
ifconfig eth0
eth0 Link encap:Ethernet HWaddr 00:15:c5:4a:16:5a inet addr:10.0.0.100 Bcast:10.0.0.255 Mask:255.255.255.0
inet6 addr: fe80::215:c5ff:fe4a:165a/64 Scope:Link
UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1
RX packets:466475604 errors:0 dropped:0 overruns:0 frame:0
TX packets:403172654 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:1000
RX bytes:2574778386 (2.5 GB) TX bytes:1618367329 (1.6 GB)

Работа в сети
42
Interrupt:16
Для настройки шлюза по умолчанию вы можете использовать команду route следующим образом. Измените адрес шлюза по умолчанию на требуемый для вашей сети.
sudo route add default gw 10.0.0.1 eth0
Для проверки настройки шлюза по умолчанию используйте команду route таким образом:
route -n
Kernel IP routing table
Destination Gateway Genmask Flags Metric Ref Use Iface
10.0.0.0 0.0.0.0 255.255.255.0 U 1 0 0 eth0 0.0.0.0 10.0.0.1 0.0.0.0 UG 0 0 0 eth0
Если вам требуется DNS для временной настройки сети, вы можете добавить IP-адреса DNS-серверов в файл
/etc/resolv.conf
. Пример ниже показывает как указать два DNS-сервера в
/etc/resolv.conf
, которые могут быть заменены на сервера использующиеся в вашей сети. Более пространное описание настройки клиента DNS приведено в следующей секции.
nameserver 8.8.8.8
nameserver 8.8.4.4
Если вам больше не требуется эта конфигурация и вы хотите отменить все
IP настройки интерфейса, вы можете использовать команду ip с опцией flush как показано ниже:
ip addr flush eth0
Сброс IP настроек с использованием команды ip не очистит содержимое
/etc/resolv.conf
. Вам придётся удалять или менять эти значения вручную.
1.2.2. Динамическое назначение IP-адреса (клиент DHCP)
Чтобы настроить ваш сервера на использование DHCP для динамического присвоения адреса, добавьте dhcp метод в адресную секцию inet для соответствующего интерфейса в файле
/etc/network/interfaces
. Пример ниже предполагает, что вы настраиваете ваш первый интерфейс Ethernet,
обозначенный как eth0.

Работа в сети
43
auto eth0
iface eth0 inet dhcp
Добавив настройку интерфейса как показано выше, вы можете вручную включить интерфейс командой ifup, которая активизирует процесс DHCP
через dhclient.
sudo ifup eth0
Для отключения интерфейса вручную вы можете воспользоваться командой ifdown, которая запустит процесс освобождения DHCP и остановки интерфейса.
sudo ifdown eth0
1.2.3. Статическое назначение IP-адреса
Для настройки вашей системы под использование статического присвоения
IP-адреса добавьте метод static в секцию inet для соответствующего интерфейса в файле
/etc/network/interfaces
. Пример ниже предполагает,
что вы настраиваете ваш первый интерфейс Ethernet, обозначенный как
eth0. Измените значения адреса, маски сети, и шлюза для соответствия требованиям вашей сети.
auto eth0
iface eth0 inet static address 10.0.0.100
netmask 255.255.255.0
gateway 10.0.0.1
Добавив настройку интерфейса как показано выше, вы можете вручную включить интерфейс командой ifup.
sudo ifup eth0
Для отключения интерфейса вручную вы можете воспользоваться командой ifdown.
sudo ifdown eth0
1.2.4. Интерфейс Loopback (обратной петли)
Интерфейс loopback определяется системой как lo и по умолчанию задает адрес 127.0.0.1. Он может быть выведен командой ifconfig.
ifconfig lo

Работа в сети
44
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:2718 errors:0 dropped:0 overruns:0 frame:0
TX packets:2718 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:0
RX bytes:183308 (183.3 KB) TX bytes:183308 (183.3 KB)
По умолчанию в
/etc/network/interfaces должны присутствовать две строки, отвечающих за автоматическую настройку интерфейса loopback.
Рекомендуется оставить эти настройки по умолчанию, пока не возникнет специфической причины для их изменения. Пример этих двух строк приведён ниже.
auto lo iface lo inet loopback
1.3. Разрешение имён
Под разрешением имени по отношению к IP-сетям подразумевается процесс определения IP-адреса по имени хоста, упрощающий идентификацию ресурса в сети. В следующем разделе показано, как правильно настроить вашу систему для разрешения имён с помощью DNS и статических записей имен хостов.
1.3.1. Настройка клиента DNS
Традиционно файл
/etc/resolv.conf был статическим файлом настроек,
который очень редко требовалось изменять или он менялся автоматически по запросам DHCP клиента. В настоящее время компьютер может переключаться с одной сети на другу слишком часто и структура resolvconf
теперь используется для отслеживания этих изменений и автоматического обновления настроек разрешений. Это выглядит как промежуточный слой между программами, которые предоставляют информацию от серверов имён, и приложениями, которым она требуется. Resolvconf делает доступной информацию через подключение сценариев, связанных с настройкой сетевых интерфейсов. Наиболее значимое отличие для пользователя в том, что любые ручные изменения
/etc/resolv.conf будут потеряны при перезаписи по каждому срабатыванию триггеров resolveconf.
Вместо этого resolveconf использует ловушки клиента DHCP и
/etc/network/
interfaces для генерации списка серверов имен и доменов, чтобы положить в /etc/resolv.conf, который теперь является символьной ссылкой:
/etc/resolv.conf -> ../run/resolvconf/resolv.conf

Работа в сети
45
Для настройки разрешений добавьте IP-адреса серверов имён,
соответствующие вашей сети, в файл
/etc/network/interfaces
. Вы также можете добавить необязательный список подбора DNS суффиксов для получения доменных имен. Для каждой другой разрешенной опции настройки resolv.conf вы можете добавить внутри абзаца по отдельной строке с этой опцией с префиксом имени dns-. Результирующий файл может выглядеть так:
iface eth0 inet static address 192.168.3.3
netmask 255.255.255.0
gateway 192.168.3.1
dns-search example.com dns-nameservers 192.168.3.45 192.168.8.10
В опции search можно также указать несколько доменных имён, в этом случае DNS-запросы будут добавляться в том порядке, в котором они введены. Например, в вашей сети может быть несколько поддоменов для поиска: родительский домен example.com и два поддомена,
sales.example.com и dev.example.com.
Если у вас несколько доменов, в которых должен выполняться поиск, ваша конфигурация может выглядеть так:
iface eth0 inet static address 192.168.3.3
netmask 255.255.255.0
gateway 192.168.3.1
dns-search example.com sales.example.com dev.example.com dns-nameservers 192.168.3.45 192.168.8.10
Если вы попытаетесь проверить командой ping хост с именем server1, ваша система автоматически запросит DNS по их полным доменным именам
(FQDN) в следующем порядке:
1. server1.example.com
2. server1.sales.example.com
3. server1.dev.example.com
Если совпадений не будет, DNS сервер предоставит результат notfound и запрос DNS потерпит неудачу.
1.3.2. Статические имена хостов
Статические имена хостов — это локально определённые соотношения
«имя хоста - IP», находящиеся в файле
/etc/hosts
. Значения, определённые

Работа в сети
46
в файле hosts
, по умолчанию превалируют над DNS. Это означает, что если система пытается разрешить имя и находит его в /etc/hosts, она не будет пытаться смотреть записи в DNS. В некоторых конфигурациях,
особенно когда доступ в интернет не требуется, сервера, соединённые с ограниченным количеством ресурсов, могут просто использовать статический список имён вместо DNS.
Далее приведен пример файла hosts
, где ряд локальных серверов определены обычными именами хостов, алиасами и их эквивалентами полных имен (FQDN).
127.0.0.1 localhost
127.0.1.1 ubuntu-server
10.0.0.11 server1 vpn server1.example.com
10.0.0.12 server2 mail server2.example.com
10.0.0.13 server3 www server3.example.com
10.0.0.14 server4 file server4.example.com
В примере выше обратите внимание, что каждый сервер имеет алиас вдобавок к их правильным коротким и полным именам.
Server1 соотносится с именем vpn, server2 определен как mail,
server3 как www, and server4 как file.
1.3.3. Настройка переключения сервиса имён
Последовательность, в которой ваша система выбирает метод разрешения имен по IP адресам управляется конфигурационным файлом переключателя сервиса имён (NSS)
/etc/nsswitch.conf
. Как отмечено в предыдущей секции, обычно статические имена хостов, определенные в системном файле
/etc/hosts
, имеют приоритет перед разрешением имён через DNS. Далее следует пример строки, отвечающей за этот порядок перебора имён хостов в файле
/etc/hosts hosts: files mdns4_minimal [NOTFOUND=return] dns mdns4
files сперва пытается разрешить статическое имя хоста в
/etc/hosts
mdns4_minimal пытается разрешить имя с использованием параллельного (multicast) DNS.
[NOTFOUND=return] означает, что любой ответ notfound,
предшествующий процессу mdns4_minimal должен считаться значимым
(авторитетным), и что система не будет пытаться продолжать искать ответ.
dns представляет собой наследуемый последовательный (legacy unicast)
DNS-запрос.

Работа в сети
47
mdns4 представляет параллельный (multicast) DNS-запрос.
Для изменения последовательности вышеупомянутых методов разрешения имен вы можете просто заменить строку hosts: на значение по вашему выбору. Например, если вы предпочитаете использовать последовательный
DNS до параллельного DNS, вы можете изменить строку в
/etc/nsswitch.conf как показано ниже:
hosts: files dns [NOTFOUND=return] mdns4_minimal mdns4 1.4. Использование моста
Соединение нескольких интерфейсов — наиболее продвинутая настройка,
но очень полезная во множестве сценариев. Один вариант — установка взаимодействия между несколькими сетевыми интерфейсами и затем использование защитного экрана (firewall) для фильтрования трафика между двумя сегментами сети. Другой сценарий — использование связывания на системе с одним интерфейсом для разрешения виртуальным машинам иметь прямой доступ во внешнюю сеть. Следующий пример раскрывает последний сценарий.
Перед настойкой взаимодействия вам потребуется установить пакет bridge- utils. Для установки пакета введите в терминале:
sudo apt-get install bridge-utils
Далее настройте взаимодействие, отредактировав
/etc/network/interfaces
:
auto lo iface lo inet loopback auto br0
iface br0 inet static address 192.168.0.10
network 192.168.0.0
netmask 255.255.255.0
broadcast 192.168.0.255
gateway 192.168.0.1
bridge_ports eth0
bridge_fd 9
bridge_hello 2
bridge_maxage 12
bridge_stp off
Введите соответствующие значения для вашего физического интерфейса и сети.

Работа в сети
48
Теперь перезапустите сеть для разрешения взаимодействия интерфейсов:
sudo /etc/init.d/networking restart
Теперь новый мост между интерфейсами поднят и работает. Утилита application>brctl
1.5. Ресурсы
Страница Ubuntu Wiki Network
1
содержит ссылки на заметки по более продвинутым настройкам сети.
man-страница resolvconf
2
содержит больше информации по resolvconf.
man-страница interfaces
3
содержит подробности по дополнительным опциям для
/etc/network/interfaces
man-страница dhclient
4
содержит подробности по большему количеству опций для настройки клиента DHCP.
• Для дополнительной информации по настройке DNS-клиента смотрите
resolver man page
5
. Глава 6 руководства O'Reilly Администрирования
сетей Linux
6
также является хорошим источником по разрешению имён и настройке сервиса имён.
• Для дополнительной информации по сетевому связыванию смотрите man-
страницу brctl
7
и страницу Net:Bridge
8
от Linux Foundation.
1
https://help.ubuntu.com/community/Network
2
http://manpages.ubuntu.com/manpages/man8/resolvconf.8.html
3
http://manpages.ubuntu.com/manpages/man5/interfaces.5.html
4
http://manpages.ubuntu.com/manpages/man8/dhclient.8.html
5
http://manpages.ubuntu.com/manpages/man5/resolver.5.html
6
http://oreilly.com/catalog/linag2/book/ch06.html
7
http://manpages.ubuntu.com/manpages/man8/brctl.8.html
8
http://www.linuxfoundation.org/en/Net:Bridge

Работа в сети
49
2. TCP/IP
Протокол управления передачей и межсетевой протокол (TCP/IP)
— это стандартный набор протоколов, разработанных в конце 70-х годов управлением перспективного планирования оборонных научно- исследовательских работ (DARPA) в качестве средства коммуникации между различными типами компьютеров и компьютерных сетей. Так как сеть Интернет построена на стеке протоколов TCP/IP, они представляют самый популярный набор сетевых протоколов на Земле.
2.1. Введение в TCP/IP
Два компонента протокола TCP/IP представляют разные аспекты компьютерного взаимодействия. Межсетевой протокол "IP" в стеке TCP/IP —
это протокол без установления соединения, который предоставляет только маршрутизацию пакетов, используя IP-пакет (датаграмму) как основной блок сетевой информации. IP-пакет содержит заголовок с последующим сообщением. Протокол управления передачей "TCP" в TCP/IP позволяет сетевым хостам устанавливать соединения, которые могут использоваться для передачи потоков данных. TCP также гарантирует, что данные между подключениями будут доставлены, и что они придут на сетевой хост в том же порядке, в каком они были посланы с другого.
2.2. Настройка TCP/IP
Настройка протокола TCP/IP состоит из нескольких элементов, которые должны быть указаны в соответствующих файлах конфигураций, или получены с помощью дополнительных служб таких как сервер протокола динамической настройки хостов (Dynamic Host Configuration Protocol, DHCP),
который, в свою очередь, может быть настроен для автоматического предоставления правильных настроек TCP/IP клиентам сети. Следующим параметрам настройки должны быть указаны правильные значения, чтобы обеспечить нормальную работу вашей системы Ubuntu в сети.
Обычные элементы настроек TCP/IP и их назначение таковы:
IP адрес. IP адрес — это уникальная идентификационная строка,
представленная в виде четырёх десятичных чисел в диапазоне от нуля
(0) до двухсот пятидесяти пяти (255), разделённых точками; каждое из четырёх чисел представляет восемь (8) бит адреса, полная длина которого тридцать два (32) бита. Этот формат называют dotted quad
notation (четырёхкомпонентная система обозначений адресов с точками).
Маска сети (Netmask). Маска подсети (или просто, netmask) — это локальная битовая маска, или наборы флагов, отделяющая часть IP-

Работа в сети
50
адреса, значимую для сети, от битов, значимых для подсети (subnetwork).
Например, в сети класса C, стандартная маска сети определена как
255.255.255.0, она маскирует первые три байта IP-адреса и позволяет последнему байту IP-адреса оставаться доступным для обозначения хостов в подсети.
Сетевой адрес (Номер сети). Сетевой адрес (номер сети) представляет собой набор байт, заключающий в себе сетевую часть IP-адреса.
Например, хост 12.128.1.2 в сети класса A будет использовать 12.0.0.0
в качестве сетевого адреса, здесь число 12 представляет первый байт IP-адреса (сетевая часть), а нули (0) во всех оставшихся трех байтах представляют потенциальные значения для хоста. Хост в сети,
использующий частный IP-адрес 192.168.1.100, будет, в свою очередь,
использовать номер сети 192.168.1.0, который определяет первые три байта сети 192.168.1 класса C и ноль (0) для всех возможных хостов в сети.
Широковещательный адрес. Широковещательный адрес — это IP- адрес, который позволяет отправлять данные одновременно всем хостам в данной подсети вместо конкретного хоста. Стандартный основной широковещательный адрес для всех IP-сетей — 255.255.255.255, но этот адрес не может использоваться для отправки широковещательного сообщения каждому хосту в Интернете, потому что его заблокируют маршрутизаторы. Более подходящий широковещательный адрес —
это тот, который устанавливается для конкретной подсети. Например,
в частной сети 192.168.1.0 класса C, широковещательным адресом является 192.168.1.255. Широковещательные сообщения обычно производятся сетевыми протоколами, такими как ARP (Address Resolution
Protocol — протокол разрешения адресов) и RIP (Routing Information
Protocol — протокол маршрутизационной информации).
Адрес шлюза (Gateway Address). Адрес шлюза — это IP-адрес, через который некоторая сеть, или хост в сети, могут быть доступны. Пусть один сетевой хост желает организовать соединение с другим сетевым хостом, но они расположены в разных сетях, в таких случаях должен использоваться шлюз (gateway). Во многих случаях адрес шлюза будет совпадать с адресом маршрутизатора той же сети, который, в свою очередь, будет перенаправлять трафик в другие сети или на другие хосты, такие как хосты Интернет. Адресу шлюза должно быть присвоено правильное значение, в противном случае ваша система не сможет связаться ни с одним хостом, находящимся за пределами вашей сети.
Адрес сервера имён. Адрес сервера имён — это IP-адрес сервера службы доменных имён (DNS), который разрешает сетевые имена хостов в IP-адреса. Существует три уровня адресов серверов имён, которые

Работа в сети
51
могут быть определены в порядке старшинства: первичный сервер имён,
вторичный сервер имён и третичный сервер имён. Чтобы у вашей системы была возможность разрешения сетевых имён хостов в соответствующие им IP-адреса, вы должны определить правильные адреса серверов имён,
которые вам разрешено использовать в настройках TCP/IP вашей системы.
В большинстве случаев эти адреса предоставляются вашим сетевым провайдером, но есть много свободных и публично доступных серверов имён, которые можно использовать — например, сервера Level3 (Verizon)
с адресами от 4.2.2.1 до 4.2.2.6.
IP-адрес, маска сети, адрес сети, широковещательный адрес и адрес шлюза обычно определяются с помощью подходящих инструкций в файле
/etc/network/interfaces
. Адреса серверов имен обычно задаются с помощью директивы nameserver в файле
/etc/
resolv.conf
. Для получения более полной информации смотрите страницы системного руководства для interfaces или resolv.conf
,
соответственно, введя следующие команды в терминале:
Обратитесь к соответствующей странице системного руководства о interfaces с помощью комманды:
man interfaces
Обратитесь к соответствующей странице системного руководства о resolv.conf с помощью комманды:
man resolv.conf
2.3. IP-маршрутизация
Маршрутизация IP — это способ задания и определения маршрутов в сети TCP/IP, через которые могут передаваться данные. Маршрутизация использует набор таблиц маршрутизации для управления переадресацией сетевых пакетов с данными от их источника к месту назначения,
часто через множество промежуточных сетевых узлов, называемых
маршрутизаторами. Есть две основных разновидности IP-маршрутизации:
статическая маршрутизация и динамическая маршрутизация.
Статическая маршрутизация настраивается путём добавления вручную
IP-маршрутов в системную таблицу маршрутизации. Обычно это делается с помощью команды route. Статическая маршрутизация имеет много преимуществ по сравнению с динамической маршрутизацией, таких как простота реализации на небольших сетях, предсказуемость (таблица

Работа в сети
52
маршрутизации всегда просчитана заранее и, таким образом, маршруты строго постоянны при каждом использовании), меньшие накладные расходы по сравнению с протоколом динамической маршрутизации. Тем не менее, у статической маршрутизации также есть свои недостатки.
Например, статическая маршрутизация ограничена малыми сетями и плохо масштабируема. Статическая маршрутизация также неустойчива к сбоям в работе сети или сбоям по пути маршрута, что связано с фиксированной природой её маршрутов.
Динамическая маршрутизация меняется в зависимости от состояния больших сетей с множеством возможных IP-маршрутов от источника к приемнику. Она использует специальные протоколы маршрутизации,
такие как RIP (Router Information Protocol — протокол маршрутизационной информации), которые осуществляют автоматическую корректировку маршрутизационных таблиц, делающую динамическую маршрутизацию возможной. Динамическая маршрутизация имеет ряд преимуществ перед статической. Например, лучшую масштабируемость и возможность адаптироваться к сбоям в маршрутах и выходам их из строя. Помимо этого, требуется меньше ручной настройки таблиц маршрутизации,
так как маршрутизаторы узнают друг у друга про своё существование и доступные маршруты. Эта черта также сводит на нет возможность внесения некорректных записей в таблицы маршрутизации из-за простой человеческой ошибки. Динамическая маршрутизация, тем не менее, не идеальна, и имеет неудобства, такие как повышенная сложность и дополнительная нагрузка на сеть за счёт взаимодействия маршрутизаторов, которая не приносит мгновенной выгоды конечным пользователям, но при этом занимает сетевой трафик.
2.4. TCP и UDP
TCP — протокол с установлением соединения, предоставляющий коррекцию ошибок и гарантированную доставку данных через так называемое
управление передачей (flow control). Управление передачей определяет,
когда поток данных необходимо остановить и заново отправить предыдущие пакеты данных вследствие таких проблем, как коллизии
(collisions). TCP обычно используется при обмене важной информацией,
такой как транзакции баз данных.
Протокол пользовательских датаграмм (UDP — User Datagram
Protocol), с другой стороны, является протоколом без установления
соединения, который редко используется для передачи важных данных, поскольку в нём отсутствует управление передачей или другие способы гарантированной доставки данных. UDP обычно используется

Работа в сети
53
в приложениях для передачи потокового аудио или видео, в которых он работает быстрее TCP из-за отсутствия коррекции ошибок и управления передачей, и где потеря нескольких пакетов не является катастрофичной.
2.5. ICMP
Протокол управляющих сообщений сети Интернет (Internet Control
Messaging Protocol, ICMP) — это расширение Интернет-протокола
(IP), определённое в документе RFC#792 (Request For Comments),
поддерживающее сетевые пакеты, содержащие управляющие и информационные сообщения, а также сообщения об ошибках. ICMP
используется сетевыми приложениями, например, утилитой ping, с помощью которой можно определить доступность сетевого хоста или устройства. Например, сообщения об ошибках, возвращаемых
ICMP, которые полезны как хостам в сети, так и устройствам типа маршрутизаторов, включают в себя «адресат недоступен» (Destination
Unreachable) и «превышено время ожидания» (Time Exceeded).
2.6. Демоны
Демоны — это специальные системные программы, которые, как правило,
выполняются постоянно в фоновом режиме и ожидают запросов на функции, которые они предоставляют для других программ. Многие демоны направлены на работу с сетью; то есть, большое число демонов,
выполняющихся в фоновом режиме в системе Ubuntu, могут предоставлять сетевую функциональность. В качестве примера таких сетевых демонов можно привести Hyper Text Transport Protocol Daemon (httpd), который предоставляет функции веб-сервера, Secure SHell Daemon (sshd), который предоставляет безопасный удалённый доступ к консоли и возможность передачи файлов и Internet Message Access Protocol Daemon (imapd),
который предоставляет службы электронной почты.
2.7. Ресурсы
• Существуют страницы руководств по TCP
9
и IP
10
, которые содержат больше полезной информации.
• Также посмотрите TCP/IP Tutorial and Technical Overview
11
из «красной книги» IBM.
• Ещё один ресурс — это книга издательства O'Reilly TCP/IP Network
Administration
12 9
http://manpages.ubuntu.com/manpages/precise/en/man7/tcp.7.html
10
http://manpages.ubuntu.com/manpages/precise/man7/ip.7.html
11
http://www.redbooks.ibm.com/abstracts/gg243376.html
12
http://oreilly.com/catalog/9780596002978/

Работа в сети
54
3. Протокол динамической настройки хостов
(Dynamic Host Configuration Protocol, DHCP)
DHCP (протокол динамической конфигурации узла) — это сетевой сервис,
позволяющий компьютерам автоматически получать настройки от сервера в отличие от ручной настройки каждого компьютера в сети. Компьютеры,
настроенные в качестве DHCP клиентов, не контролируют параметры,
которые они получают от DHCP сервера, а сама настройка прозрачна для пользователя компьютера.
В самом общем случае, настройки, предоставляемые сервером DHCP его клиентам, включают в себя:
• IP-адрес и маску подсети
• IP-адрес шлюза по умолчанию
• IP-адрес серверов DNS
Кроме того, сервер DHCP может дополнительно предоставить такие параметры настроек, как:
• Имя хоста
• Имя домена
• Сервер синхронизации времени
• Сервер печати
Преимущество использования DHCP-сервера в сети состоит в том, что изменения настроек сети, например, изменение адреса DNS-сервера,
должны выполняться только на DHCP-сервере. Все остальные компьютеры в сети будут автоматически перенастроены DHCP-клиентами во время следующего опроса ими DHCP-сервера. Дополнительное преимущество состоит в том, что становится проще подключать в сеть новые компьютеры,
так как отпадает необходимость проверять доступность IP-адреса. Также сокращается количество конфликтов при назначении IP-адресов.
Сервер DHCP может предоставлять настройки, используя следующие методы:
Выделение вручную (по MAC-адресу)
Этот метод подразумевает использование DHCP для определения уникального аппаратного адреса каждой сетевой карты, подключенной к сети, и затем продолжительного предоставления неизменной конфигурации каждый раз, когда DHCP-клиент делает запрос на
DHCP-сервер, используя это сетевое устройство. Это гарантирует, что определённый адрес будет автоматически присваиваться этой сетевой карте на основе её MAC-адреса.

Работа в сети
55
Динамическое выделение (пул адресов)
При этом методе сервер DHCP будет выделять IP-адрес из пула адресов
(иногда называемым диапазоном или областью) на период времени
(или в аренду), который настраивается на сервере, или пока клиент не проинформирует сервер, что он больше не нуждается в адресе.
Таким образом, клиенты получают свои настройки динамически по принципу «первый пришёл — первый обслужился». Когда клиент
DHCP отсутствует в сети определённое время, настройка считается просроченной и возвращается в пул адресов для использования другими
DHCP-клиентами. Это означает, что адрес арендуется или выдаётся на определенный период времени. По истечении этого периода клиент должен повторно договариваться об использовании адреса с сервером.
Автоматическое выделение
Использую этот метод, DHCP автоматически присваивает устройству постоянный IP-адрес, выбранный из пула доступных адресов. Обычно
DHCP используется для выдачи временного адреса, но сервер DHCP
может использовать бесконечное время аренды.
Два последних метода можно рассматривать как автоматические поскольку DHCP-сервер выдаёт адреса без дополнительного вмешательства. Единственная разница заключается в том, насколько арендуется адрес, другими словами, когда истечёт время использования адреса клиентом. Ubuntu поставляется вместе с DHCP-сервером и клиентом.
Сервером является dhcpd (сервис протокола динамического выделения адресов). Клиент, поставляемый с Ubuntu — это dhclient, и он может быть установлен на все компьютеры, требующие автоматических настроек. Обе программы просты в установке и настройке и автоматически запускаются при загрузке системы.
3.1. Установка
Для установки dhcpd введите следующую команду в терминале:
sudo apt-get install isc-dhcp-server
Возможно, вам потребуется изменить настройку по умолчанию редактированием /etc/dhcp/dhcpd.conf для удовлетворения вашим потребностям и специфическим настройкам.
Вы также можете исправить /etc/default/isc-dhcp-server для определения интерфейсов, которые должен слушать dhcpd.
ПРИМЕЧАНИЕ: сообщения демона dhcpd пересылаются в syslog.
Обращайтесь туда для ознакомления с диагностическими сообщениями.

Работа в сети
56 3.2. Конфигурация
Сообщение об ошибке, с которым заканчивается процесс установки,
может быть немного непонятным, но приведённые ниже шаги помогут вам настроить службу:
Наиболее вероятно, вы захотите установить случайную раздачу IP-адресов.
Это может быть выполнено сдледующим образом:
# minimal sample /etc/dhcp/dhcpd.conf default-lease-time 600;
max-lease-time 7200;
subnet 192.168.1.0 netmask 255.255.255.0 {
range 192.168.1.150 192.168.1.200;
option routers 192.168.1.254;
option domain-name-servers 192.168.1.1, 192.168.1.2;
option domain-name "mydomain.example";
}
В результате DHCP-сервер будет выдавать клиентам IP-адреса из диапазона
192.168.1.150-192.168.1.200. IP-адрес будет выдаваться в аренду на 600
секунд, если клиент не запросит какой-то другой период времени. В любом случае максимальный (допустимый) срок аренды будет 7200 секунд. Кроме того, сервер будет «советовать» клиенту использовать 192.168.1.254
в качестве шлюза по умолчанию и 192.168.1.1 и 192.168.1.2 в качестве серверов DNS.
После изменения конфигурационного файла необходимо перезапустить dhcpd:
sudo /etc/init.d/isc-dhcp-server restart
3.3. Ссылки
dhcp3-server Ubuntu Wiki
13
содержит дополнительную информацию.
• Для дополнительных опций
/etc/dhcp/dhcpd.conf смотрите man-страницу
dhcpd.conf
14
ISC dhcp-server
15 13
https://help.ubuntu.com/community/dhcp3-server
14
http://manpages.ubuntu.com/manpages/precise/en/man5/dhcpd.conf.5.html
15
http://www.isc.org/software/dhcp

Работа в сети
57
4. Синхронизация времени с NTP
NTP — это протокол TCP/IP для синхронизации времени через сеть. По существу, клиент запрашивает текущее время на сервере и использует результат для установки своего собственного времени.
За этим простым описанием скрывается много сложностей — существуют уровни NTP-серверов, где первый уровень подключен к атомным часам,
а второй и третий уровни серверов распределяют на себя нагрузку по актуальным запросам из интернета. Кроме того, клиентское приложение сложнее, чем вы можете подумать — оно компенсирует задержки соединения и регулирует время таким образом, чтобы не навредить другим процессам, запущенным на сервере. Но, к счастью, вся эта сложность скрыта от вас!
Ubuntu использует ntpdate и ntpd.
4.1. ntpdate
Ubuntu в качестве стандарта использует ntpdate, запуская эту программу один раз во время загрузки, чтобы настроить время в соответствии с NTP- сервером Ubuntu.
ntpdate -s ntp.ubuntu.com
4.2. ntpd
Демон ntpd вычисляет смещение системных часов и постоянно подстраивает их, чтобы не было больших изменений, которые могут привести, например, к противоречивым записям в журналах. Платой за это является некоторое потребление вычислительной мощности и памяти, но на современных серверах это несущественно.
4.3. Установка
Чтобы установить ntpd, введите в терминале:
sudo apt-get install ntp
4.4. Конфигурация
Отредактируйте
/etc/ntp.conf
, чтобы добавить или удалить серверы. По умолчанию используются следующие серверы:

Работа в сети
58
# Use servers from the NTP Pool Project. Approved by Ubuntu Technical Board
# on 2011-02-08 (LP: #104525). See http://www.pool.ntp.org/join.html for
# more information.
server 0.ubuntu.pool.ntp.org server 1.ubuntu.pool.ntp.org server 2.ubuntu.pool.ntp.org server 3.ubuntu.pool.ntp.org
После изменения конфигурационного файла необходимо перезагрузить ntpd:
sudo /etc/init.d/ntp reload
4.5. Просмотр статуса
Используйте ntpq, чтобы увидеть больше информации:
# sudo ntpq -p
remote refid st t when poll reach delay offset jitter
==============================================================================
+stratum2-2.NTP. 129.70.130.70 2 u 5 64 377 68.461 -44.274 110.334
+ntp2.m-online.n 212.18.1.106 2 u 5 64 377 54.629 -27.318 78.882
*145.253.66.170 .DCFa. 1 u 10 64 377 83.607 -30.159 68.343
+stratum2-3.NTP. 129.70.130.70 2 u 5 64 357 68.795 -68.168 104.612
+europium.canoni 193.79.237.14 2 u 63 64 337 81.534 -67.968 92.792 4.6. Ссылки
• Дополнительную информацию смотрите на вики-странице Ubuntu Time
16
ntp.org, домашняя страница проекта Network Time Protocol
17 16
https://help.ubuntu.com/community/UbuntuTime
17
http://www.ntp.org/
1   2   3   4   5   6   7   8   9   ...   16


База данных защищена авторским правом ©nethash.ru 2019
обратиться к администрации

войти | регистрация
    Главная страница


загрузить материал