Глава 12
Подключение к сети
Мой туннель подключен.
Я могу использовать IPv6.
Я и ещё трое других!
Всё это теория IPv4 и IPv6 - она прекрасна. Теперь давайте что-то сделаем с этим, и попробуем реально подключиться к сети. Хотя OpenBSD позволяет работать с коммутируемыми соединениями, сегодня они используются редко, поэтому мы сосредоточимся Ethernet-соединениях. Сегодня, Ethernet является наиболее распространённым типом сети и наиболее распространённым сетевым интерфейсом в OpenBSD.
Большинство людей имеют подключение IPv4, но IPv6 становится всё более значимым. Если вы не можете полностью сделать свою сеть IPv6, вы можете использовать туннель для достижения адресного пространства IPv6 и предоставить адресное пространство IPv6 своим клиентам. О том, как создать и настроить такой туннель, я расскажу в этой главе.
Наконец, OpenBSD может объединять сетевые подключения в транки или разделять их на виртуальные локальные сети (VLAN). В этой главе мы рассмотрим оба подхода.
Разрешение DNS
Вероятнее всего, вы захотите использовать имена хостов, а не IP адреса, чтобы обратиться к
http://www.cnn.com/ вместо
http://157.166.255.18. Unix-подобные системы используют резольвер для выполнения этой задачи.
Большинство хостов используют два инструмента разрешения имён хостов и IP-адресов: файл hosts и DNS. (Различные операционные системы поддерживают дополнительные сервисы разрешения имён, такие как YP, LDAP, NIS и прочие, но в любом случае, каждая система поддерживает эти два способа.)
Файл hosts представляет собой текстовый файл на локальном компьютере, содержащий статический IP адрес и список имён хостов. DNS является более динамичным сервисом, использующим сеть для получения требуемой информации. Вы можете указать сервер DNS по IP адресу, но сейчас мы рассмотрим файл hosts более детально.
Что если вы предпочитаете адреса IPv4 или IPv6? Или вы хотите, чтобы файл hosts перекрыл DNS? Может быть, у вас есть домен по умолчанию который должен использовать ваши запросы. Резолвер (решатель) производит поиск, пока он не найдёт первый ответ, либо пока не исчерпает свои источники информации. Сообщите своему резольверу о своих потребностях используя файл /etc/resolv.conf.
Файл /etc/resolver.conf
Вы настраиваете поведение резольвера в /etc/resolv.conf. Система без /etc/resolv.conf может обнаружить только имена хостов, перечисленные в файле hosts. Скорее всего, пустой файл hosts - не то, что вы хотите. Начните с определения доменных имён.
Поиск доменов по умолчанию
Если вы хотите пропинговать хост в удалённой сети, вы можете ожидать, что вам потребуется указать весь домен. Команда ping www.openbsd.org должена сработать, но если бы вы хотели проверить ping web-сервера вашей компании, имело бы больше смысла набрать ping www. И вы можете, поскольку OpenBSD позволяет указать домен по умолчанию, указать короткое имя хоста, при этом система попытается найти правильный хост.
Например, если у вас только один локальный домен, вы можете указать список ключевых слов домена в /etc/resolv.conf:
domain michaelwlucas.com
Теперь, когда я ввожу ping ftp, резольвер должен получить IP адрес с хоста ftp.michaelwlucas.com.
Если у вас более одного локального домена, используйте ключевое слово search для поиска и список доменов, примерно так:
search michaelwlucas.com openbsd.org
Если я теперь введу ping ftp, резолвер должен получить IP хоста ftp.michaelwlucas.com. После того, как резолвер узнает, что такой хост не существует, он начнёт проверку ftp.openbsd.org. Поскольку данный хост существует, ping начнёт свою работу. Ключевое слово searsh может иметь до шести доменов, и не может быть длинее 1024 символов.
Использование domain и search
Вы можете использовать дибо domain, либо search. Если вы используете оба, побеждает последняя запись файла. Если вы используете несколько строк search или domain, действовать будет только одна последняя строка в файле. Вот, как не следует этого делать:
search cnn.com openbsd.org
search sluggy.com michaelwlucas.com
domain blackhelicopters.org
Вы могли бы просто избавиться от двух выражений search. Резолвер никогда не будер разбирать эти списки доменов; он будет использовать только последний список domain.
Серверы имён (Name Servers)
Теперь, когда резолвер знает какие домены следует проверять по умолчанию, укажите, какие серверы имён он должен использовать. Перечислите все серверы имён по одному IP адресу в каждой строке в порядке предпочтения.
nameserver 192.0.2.5
nameserver 198.51.100.5
nameserver 2001:db8::5
Вы можете перечислить до трёх серверов имён по IP адресам. (По достаточно очевидным причинам, имена хостов для записи сервера имён работать не будут.) Если ваш resolv.conf не перечисляет серверы имён, резольвер должен проверять сервер имён на локальной машине.
Порядок просмотра
Вы можете получить информацию хоста с помощью DNS или с помощью файла hosts. Резольвер должен остановиться, как только ответ на запрос будет найден. Если вы проверяете файл hosts, а затем DNS, записи файла hosts перекроют сервер имён. Если вы проверяете сначала сервер имён, а затем файл hosts, файл hosts будет использоваться только тогда когда запись DNS не доступна. Любой подход имеет свои преимущества, но по умолчанию, резольвер проверяет сначала файл hosts, а заетм DNS. Чтобы изменить этот порядок. используйте ключевое слово lookup.
lookup bind file
Опция file представляет /etc/hosts, в то время как по историческим обстоятельствам bind представляет DNS. (Первое ПО сервера DNS - Berkeley
Internet Name Domain server, или BIND.) Обратный вид (file bind) используется по умолчанию, т.ч. нет никакой необходимости для его явного задания.
Предпочитаемый протокол IP
По умолчанию, резолвер ищет сначала записи для IPv4, а затем просматривает записи для IPv6. Для обратного просмотра используйте ключевое слово family.
family inet6 inet4
И снова, обратная запись (inet4 inet6) используется по умолчанию, т.ч. нет необходимости в её указании.
продолжение следует...