1. Главная страница » Компьютеры

Linux включить сетевой интерфейс

Автор: | 16.12.2019

Для систематизирования информации по настройке сети в ОС Linux было решено написать эту заметку. Здесь в доступной форме описан процесс настройки сетевого интерфейса на примере ОС Ubuntu. Также данное руководство поможет «поднять» локальную сеть и на любом другом дистрибутиве Linux.

Содержание

Для просмотра текущих параметров сети и состояния сетевых интерфейсов в ОС Линукс существует команда:

Для просмотра абсолютно всех сетевых интерфейсов запускаем команду с ключом -a:

Из приведенного примера видно, что на компьютере используется два сетевых интерфейса: eth0 и lo.

Интерфейс lo — это локальная петля, которая имеет IP-адрес 127.0.0.1 и предназначена для сетевого доступа к своему же компьютеру. Далее этот интерфейс рассматриваться не будет, так как для эффективной работы не требует дополнительной настройки.

Интерфейс eth0 — это Ethernet сетевая карта, которая имеет сетевые параметры: IP-адрес — 192.168.1.18, маску сети — 255.255.0.0 и MAC-адрес — 00:11:5b:91:25:3e. Значение RUNNING показывает, что в данный момент сетевой интерфейс eth0 работает.

Для просмотра типа соединения, скорости и поддерживаемых параметров сетевым интерфейсом eth0 набираем команду:

Из вывода видно, что сетевой интерфейс eth0 работает на скорости 100Мб/с с включенным полным дуплексом (Full Duplex). Полный дуплекс от полудуплекса (Half Duplex) отличается тем, что первый обеспечивает передачу данных в обе стороны одновременно, а второй осуществляет передачу входящих и исходящих данных поочередно.

Читайте также:  250 Гб nvme ssd samsung 970 evo

Команду легко запомнить, так как после названия самой команды идет имя интерфейса и после действие, которое нужно произвести над ним (down или up).

Для возобновления работы сетевого интерфейса eth0:

Эта строка запускает bash-скрипт networking, перезапускающий сетевые интерфейсы системы.

Так же по аналогии производится остановка всех интерфейсов:

Настроить сеть можно одним из вышеприведенных способов. Эти два способа абсолютно взаимозаменяемые. Кому как привычнее.

  1. Настройка сети с помощью команд.

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

Чтобы задать основной IP-адрес и маску сети для интерфейса eth0:

Редактировать будем конфигурационный файл /etc/network/interfaces. Чтобы вывести на экран содержимое конфига, набираем команду:

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

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

Строка auto eth0 говорит, что сетевой интерфейс eth0 должен стартовать при загрузке ОС.

Вторая строка iface eth0 inet static говорит, что сетевому интерфейсу eth0 IP-адрес задается вручную.

Строка address 192.168.1.18 говорит, что сетевому интерфейсу eth0 назначен IP-адрес 192.168.1.18 (этот сетевой адрес взят для примера и на его месте может быть любой другой).

Строка netmask 255.255.0.0 говорит, что маска сети является 255.255.0.0.

Последняя строчка gateway 192.168.1.253 показывает, что сетевым шлюзом является компьютер с IP-адресом 192.168.1.253. Эта строка может отсутствовать, так как ее наличие в конфигурационном файле зависит от параметров локальной сети, к которой подключается настраиваемый компьютер.

Если в подключаемой локальной сети используется автоматическая раздача сетевых настроек DHCP-сервером, то конфигурационный файл /etc/network/interfaces должен быть приведен к виду:

Настройка DNS-сервера.

Так же во многих случаях для правильной работы локальной сети на настраиваемом компьютере потребуется ввести IP-адрес используемого DNS-сервера.

Для этого нужно открыть конфигурационный файл командой:

Строка nameserver 192.168.1.253 говорит, что в качестве DNS-сервера используется компьютер с IP-адресом 192.168.1.253.

Смена MAC-адреса сетевой карты.

Чтобы временно поменять MAC-адрес сетевой карты eth0 нужно воспользоваться командой:

Для смена MAC-адреса навсегда нужно в конфигурационном файле /etc/network/interfaces к настройкам сетевого интерфейса добавить строку с новым MAC-адресом:

Смены скорости сетевого интерфейса.

  1. sergo #
    1 Ноябрь, 23:27

огромное спасибо за статью! в линукс недавно, оч помогло, не подскажете, если сетевых в компьютере две, у одной сетевой dns-server 192.168.0.9, а у другой например 192.168.1.9, корректно будет в одном файле resolv.conf написать
nameserver 192.168.0.9
nameserver 192.168.1.9
Поймут сетевухи кому какой dns?
И можно ли в линукс назначить сетевой карточке какое-то имя, например eth0 это loc, а eth1 это prov?

1. DNS можно указать оба, но сетевым следует указать маски сети 255.255.255.0. Тогда они будут ходить по своим DNS `ам.

2. Про названия сетевых не знаю. Думаю, что можно, это же Linux!!

выключаем интерфейс
ifconfig eth0 down
даем команду
ifrename -i eth0 -n новое_имя (например local)
ifconfig local up
потом в вашем линуксе наверно надо будет в файле /etc/network/interfaces некоторые eth0 поменять на local, у меня просто альт, и этого файла вообще нет, у меня /etc/net/ifaces/папки_с_интерфейсами, и вот у меня надо папку eth0 переименовать в local, ну и потом
service network restart 🙂

Нужно будет добавить в статью, спасибо))

Думаю стоит попровить строку: sudo ifconfig eth0:0 10.10.0.1 netmask 255.255.255.0
у алиаса не может быть маски /24 (255.255.255.0), это не ошибка, т.к. в любом случае интерфейсу eth0:0 будет присвоена маска /32 (255.255.255.255)
В вашем случае будет: sudo ifconfig eth0:0 10.10.0.1/32

gpns: Думаю стоит попровить строку: sudo ifconfig eth0:0 10.10.0.1 netmask 255.255.255.0 у алиаса не может быть маски /24 (255.255.255.0), это не ошибка, т.к. в любом случае интерфейсу eth0:0 будет присвоена маска /32 (255.255.255.255) В вашем случае будет: sudo ifconfig eth0:0 10.10.0.1/32

Черт, Вы перевернули все мое сознание. Придется переделывать настройки сетевого интерфейса на компьютере, которые работали уже почти 2 года.
Почему тогда командой ifconfig показывается та маска, которую я установил?

Простым языком! Ясно и понятно! Огромное спасибо!
P.S. Только в листингах ввода команд хорошо бы шрифт сделать такой, где 0 от О визуально отличается.

GydruS: P.S. Только в листингах ввода команд хорошо бы шрифт сделать такой, где 0 от О визуально отличается.

Спасибо, приму к сведенью. Хотя вроде отличие есть, в точке )

спасибо за ваш сайт. мне нравится! все доходчиво и понятно
у меня к вам такой вопрос. если можно подскажите пожалуйста как настроить сеть чтобы работала локалка и DSL соединение одновременно.
не могу понять как это сделать.

andrey: спасибо за ваш сайт. мне нравится! все доходчиво и понятно у меня к вам такой вопрос. если можно подскажите пожалуйста как настроить сеть чтобы работала локалка и DSL соединение одновременно.

Если честно давно не сталкивался с DSL -соединениями. Расскажите по потробнее:
1. Какая локальная сеть? За модемом или на другой сетевой?

соединение самое обычное – городская сеть
компьютер подключен через сетевую карту
выход в интернет подключается через соединение DSL

andrey: соединение самое обычное – городская сеть компьютер подключен через сетевую карту выход в интернет подключается через соединение DSL

По-моему Вам нужно настраивать сам модем. Посмотрите в сторону Dual PPPOE
Я что-то подобное делал на роутере D-Link DIR -320, но на модеме не разу.

спасибо. буду искать!

К словам о DSL через локальную сеть: очень много парился, перерыл кучу манов (у меня Debian Lenny) и чтобы избавить других людей от тех же граблей скажу – pppoeconf помогает не всем, у меня например, инет появлялся на пару секунд и пропадал чудным образом. Конфиги, логи не помогли. Но спустя две недели и нару клочьев вырванных волос, наткнулся на простенькую команду ifconfig ppp0 mtu 1372. Надеюсь комуто это поможет. Выговорился, аж легче стало)))

помогите пожалуйста.
только начинаю осваивать Linux.
стоит на машине Ubuntu 10.10. подключено 2 сетевые карты. по одной виндовая сеть с доменом. во второй воткнут адсл модем с подключением PPPoE. как сделать так, чтоб и в сети работать можно было и в инете?! по отдельности все работает норм, а вместе только виндовая сеть.
виндовая сеть – eth0, модем – eth1

молодец автор!!огромный респект!
а я вот бьюсь…какой Lin выбрать для конторы которая ранее в глаза его не видела….а виндовую сеть суся 12.1 вскрыл за 5 мин))))))))

Я тоже написал подробную заметку про настройка сети, но она больше ориентированная на debian – based дистрибутивы http://www.artcom-ufa.ru/posts/2011/07/20/nastroika-seti-v-linux

Добрый день,у меня в папке etc нет ни папки network,ни папки net,стоит centos 5.7,что делать подскажите

Здравствуйте, такая проблема случилась. К интернету комп подключен через роутер.. Проблема в том, что некоторые сайты не открываются- пишет ошибка преобразования dns .. Что нужно сделать. чтобы все нормально работало?? Заранее спасибо!!

Артем: 2 сетевые карты. по одной виндовая сеть с доменом. во второй воткнут адсл модем с подключением PPPoE. как сделать так, чтоб и в сети работать можно было и в инете?!

например прописать правила маршрутизации на машине таким образом чтобы пакеты предназначенные для локальной сети отправлялись в етн0 , а все остальные в етн1
но эта тема выходит за рамки данной статьи.

Вполне годная статья. Спасибо огромное

я всего 3-й мес на linux но уже штук 17 перепробовал но никто не хочет dsl подклсразу обрывает локалку оставил zorin и вот поставил ALT -работаю как домашние а для сети ХРюша7 -снес как и все остальные.если-бы сеть на ALT то до конца жизни… я всего лет 7 как освоил комп – стар ужо.

Всё о Интернете, сетях, компьютерах, Windows, iOS и Android

Настройка сети в Linux

Перед тем, как приступать к настройке сетевого подключения в Линукс, надо начать с того, что посмотреть — какие настройки сети используются сейчас. Для этого надо воспользоваться командой ifconfig. В информационном режиме она доступна и без прав ROOT, хотя для её полноценного использования лучше получить привилегии суперпользователя, введя команду sudo ifconfig. Результатом её работы будет список имеющихся в системе сетевых подключений и их параметров.

В разных версиях Линукс имя сетевого интерфейса может быть сокращением от Ethernet — eth0, eth1, eth2 и т.п.

На интерфейс lo — сокращение от loopback — то есть локальная петля с адресом 127.0.0.1 .
Для примера рассмотрим интерфейс Eth0.
В строке inet addr отображается текущий IP-адрес компьютера в локальной сети, подключенной к этой сетевой карте. В примере это: 192.168.1.144
Bcast — это широковещательный адрес в сети, так называемый Бродкаст(Broadcast).
Mask — это маска сети.
HWaddr — это аппаратный адрес сетевой карты, он же MAC-адрес, используемый на канальном уровне.

Информацию о текущих подключения узнали, теперь рассмотрим настройку локальной сети в Linux. Сделать это можно тремя способами:
1 — Через графическую оболочку
2 — через команду ifconfig или инструмент Network Manager
3 — через конфигурационные файлы сетевого сервиса Netork или Networking.

На мой взгляд, последний способ — самый удобный и надёжный, а значит — правильный. Чтобы настроить сеть в Линукс надо открыть файл, содержащий конфиг интерфейса. Тут всё зависит от того, какой дистрибутив Linux используется.

Вариант 1. В дистрибутивах, основанных на Debian (Ubuntu, Kubuntu и т.п.)

Файл с параметрами сетевого подключения:

Для того, чтобы изменить в linux настройки сети, файл его надо с правами root любым текстовым редактором. Например, через nano:

Для автоматического получения адресов от DHCP-сервера надо пописать следующее:

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

В этом конфиге рассмотрен пример обычной домашней сети, где адрес компьютера будет 192.168.1.2, адрес шлюза и DNS-сервера (их фукнции обычно выполняет wifi-роутер)- 192.168.1.1.

Вариант 2. RedHat-based дистрибутивы (Fedora, OpenSuse, CentOS)

Файл с настройками сети Linux:

Открываем его так же через nano или vim:

В случае автоматического получения настроек от DHCP-сервера:

IP-адреса DNS-серверов в этом случае прописываются в файле

вот пример для публичных DNS-серверов от Google:

Настройка сети в Линукс завершена. Остаётся только перезапустить сеть командой:

В качестве постскриптума расскажу как включить и выключить сеть в Linux. Делается это через всё ту же команду ifconfig. Выключить сетевую карту eth0:

Включить сетевую плату в Линуксе обратно:

Полностью остановить работу всех сетевых интерфейсов.

Интерфейсом с точки зрения ОС является устройство, через которое система получает и передает IP-пакеты. Роль интерфейса локальной сети может выполнять одно (или несколько) из следующих устройств: Ethernet-карта, ISDN-адаптер или модем, подключенный к последовательному порту. Каждое устройство (не весь компьютер!) имеет свой IP-адрес. Для выхода в локальные сети используется, как правило, Ethernet-карта, что и будет предполагаться в настоящем разделе. Заодно мы рассмотрим и настройку модемного интерфейса, поскольку настраивается он вполне аналогично, и знания о методах его настройки будут необходимы нам при рассмотрении вопроса о выходе в Интернет в гл. 14

13.2. 1 Расположение конфигурационных файлов

Отметим сразу, что все приводимые ниже команды можно выполнять из командной строки, но тогда придется повторять эти операции при каждом перезапуске компьютера. Поэтому может быть удобнее записать их в один из инициализационных файлов, автоматически запускаемых при старте системы. В разных дистрибутивах процесс загрузки организован по-разному. В "Linux NET-3-HOWTO" приводится следующая таблица:

Таблица 13.1. Расположение конфигурационных файлов в основных дистрибутивах

Настройка интерфейса и маршрутизации

/etc/init.d/netbase /etc/init.d/netstd_init /etc/init.d/netstd_nfs /etc/init.d/netstd_misc

Обратите внимание, что дистрибутивы Debian и Red Hat содержат отдельный каталог для скриптов запуска системных сервисов (хотя сами файлы настроек находятся в других местах, например, в дистрибутиве Red Hat они хранятся в каталоге /etc/sysconfig). Для понимания процесса загрузки ознакомьтесь с содержимым файла / etc/inittab и документацией по процессу init .

13.2.2 Команда ifconfig

После подключения драйверов вы должны настроить те интерфейсы, которые вы предполагаете использовать. Настройка интерфейса заключается в присвоении IP-адресов сетевому устройству и установке нужных значений для других параметров сетевого подключения. Наиболее часто для этого используется программа ifconfig (ее название происходит от "interface configuration").

Запустите ее без аргументов (или с единственным аргументом -a ) и вы узнаете, какие параметры установлены в данный момент для активных сетевых интерфейсов (в частности, для сетевой карты). Кстати, имеет смысл выполнить эту команду еще до подключения модулей: а вдруг у вас поддержка интерфейсов встроена в ядро и необходимые настройки сделаны в процессе инсталляции системы. Тогда вы в ответ можете получить информацию о параметрах вашей Ethernet-карты и так называемого "кольцевого интерфейса" или "обратной петли" — Local Loopback (интерфейс Ethernet при единственной сетевой карте обозначается как eth0, а кольцевой интерфейс — как lo). Если же по этой команде вы ничего не получите, то надо переходить к подключению модулей и настройке, и начинать надо с кольцевого интерфейса.

Настройка локального интерфейса lo

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

Локальный интерфейс настраивается очень просто: командой

[root]# /sbin/ifconfig lo 127.0.0.1

Теперь, чтобы проверить работоспособность протоколов TCP/IP на вашей машине, дайте команду:

Настройка интерфейса платы Ethernet локальной сети (eth0)

Для того чтобы ваш компьютер вошел в сеть с IP-адресом, полученным вами у администратора (пусть для примера это будет адрес 192.168.0.15), вы должны запустить команду ifconfig примерно следующим образом:

[root]# /sbin/ifconfig eth0 192.168.0.15 netmask 255.255.255.0 up

Если не указывать маску подсети, то по умолчанию устанавливается маска подсети 255.0.0.0.

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

root# /sbin/ifconfig eth0 irq 5 io_addr 220 media 10baseT

Не все устройства (платы) поддерживают динамическое изменение этих параметров (т. е. может потребоваться переустановить переключатели на плате).

Интерфейс для последовательного порта

Последовательный порт используется для подключения модема, через который осуществляется соединение с сетью по телефонной линии. Для настройки интерфейса этого типа тоже можно использовать программу ifconfig . Однако, такие программы как pppd и dip , используемые для соединения с сетью по модему, способны автоматически конфигурировать сетевой интерфейс, поэтому обычно для этого случая применять ifconfig не требуется.

13.2. 3 Настройка маршрутизации

Правила маршрутизации определяют, куда отправлять IP-пакеты. Данные маршрутизации хранятся в одной из таблиц ядра. Вести таблицы маршрутизации можно статически или динамически. Статический маршрут — это маршрут, который задается явно с помощью команды route . Динамическая маршрутизация выполняется процессом-демоном ( routed или gated ), который ведет и модифицирует таблицу маршрутизации на основе сообщений от других компьютеров сети. Для выполнения динамической маршрутизации разработаны специальные протоколы: RIP, OSPF, IGRP, EGP, BGP и т. д.

Динамическая маршрутизация необходима в том случае, если у вас сложная, постоянно меняющаяся структура сети и одна и та же машина может быть доступна по различным интерфейсам (например, через разные Ethernet или SLIP интерфейсы). Маршруты, заданные статически, обычно не меняются, даже если используется динамическая маршрутизация.

Для персонального компьютера, подключаемого к локальной сети, в большинстве ситуаций бывает достаточно статической маршрутизации командой route . Прежде чем пытаться настраивать маршруты, просмотрите таблицу маршрутизации ядра с помощью команды netstat -n -r. Вы должны увидеть что-то вроде следующего

Kernel IP routing table

Destination Gateway Genmask Flags MSS Window irtt Iface

10.72.128.101 0.0.0.0 255.255.255.255 UH 0 0 0 eth0

10.72.128.0 0.0.0.0 255.255.255.0 U 0 0 0 eth0

127.0.0.0 0.0.0.0 255.0.0.0 U 0 0 0 lo

0.0.0.0 10.72.128.254 0.0.0.0 UG 0 0 0 eth0

Если таблица пуста, то вы увидите только заголовки столбцов. Тогда надо использовать route . С помощью команды route можно добавить или удалить один (за один раз) статический маршрут. Вот ее формат:

[root]# /sbin/route [-f] операция [-тип] адресат шлюз [dev] интерфейс

Здесь аргумент операция может принимать одно из двух значений: add (маршрут добавляется) или delete (маршрут удаляется). Аргумент адресат может быть IP-адресом машины, IP-адресом сети или ключевым словом default . Аргумент шлюз — это IP-адрес компьютера, на который следует пересылать пакет (этот компьютер должен иметь прямую связь с вашим компьютером). Команда

удаляет из таблицы данные обо всех шлюзах. Необязательный аргумент тип принимает значения net или host . В первом случае в поле адресата указывается адрес сети, а во втором — адрес конкретного компьютера (хоста).

Как правило, бывает необходимо настроить маршрутизацию по упоминавшимся выше трем интерфейсам:

  • локальный интерфейс (lo),
  • интерфейс для платы Ethetnet (eth0),
  • интерфейс для последовательного порта (PPP или SLIP).

Локальный интерфейс поддерживает сеть с IP-номером 127.0.0.1. Поэтому для маршрутизации пакетов с адресом 127. используется команда:

[root]# /sbin/route add -net 127.0.0.1 lo

Если у вас для связи с локальной сетью используется одна плата Ethernet, и все машины находятся в этой сети (сетевая маска 255.255.255.0), то для настройки маршрутизации достаточно вызвать:

[root]# /sbin/route add -net 192.168.36.0 netmask 255.255.255.0 eth0

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

Поскольку очень часто IP-пакеты с вашего компьютера могут отправляться не в одну единственную сеть, а в разные сети (например, при просмотре разных сайтов в Интернете), то в принципе надо было бы задать очень много маршрутов. Очевидно, что сделать это было бы очень сложно, точнее просто невозможно. Поэтому решение проблемы маршрутизации пакетов перекладывают на плечи специальных компьютеров — маршрутизаторов, а на обычных компьютерах задают маршрут по умолчанию, который используется для отправки всех пакетов, не указанных явно в таблице маршрутизации. С помощью маршрута по умолчанию вы говорите ядру "а все остальное отправляй туда". Маршрут по умолчанию настраивается следующей командой:

[root]# /sbin/route add default gw 192.168.1.1 eth0

Опция gw указывает программе route , что следующий аргумент — это IP-адрес или имя маршрутизатора, на который надо отправлять все пакеты, соответствующие этой строке таблицы маршрутизации.

После настройки маршрутизации можно проверить, что у вас получилось. Для этого снова дайте команду

Если вывод команды выглядит так, как это было показано выше, но не содержит строки, которая в графе Destination содержит 0.0.0.0 , а в графе Gateway указывает на маршрут, используемый для соединений по умолчанию, то вы, вероятно, не задали этот маршрут.

13.2.4. Настройка службы имен

С помощью команды ifconfig вы задали IP-адрес вашего компьютера, но он еще не знает своего имени (при инсталляции системы он получил обезличенное имя localhost). Существует команда hostname , которая позволяет установить (и узнать действующее в данный момент) имя компьютера и имя домена.

Однако установить только имя и только этой командой еще недостаточно, поскольку эта команда меняет имя только на текущий сеанс работы. Поэтому обычно эта команда вызывается в одном из инициализационных файлов, например, /etc/rc.d/rc или /etc/rc.d/rc.local. Вы можете попытаться найти ее там, чтобы изменить должным образом имя компьютера, которое задается в качестве параметра команды hostname . В таком случае требуется перезагрузиться для того чтобы изменения вступили в силу.

Другой способ изменения имени компьютера или домена состоит в том, что эти имена прописываются в файле /etc/sysconfig/network в виде двух строчек примерно следующего вида:

Тогда в процессе инициализации системы эти имена будут восстанавливаться, потому что файл /etc/sysconfig/network вызывается из /etc/rc.d/rc.sysinit.

Кроме того, имя компьютера должно быть прописано в файле /etc/hosts, который связывает имя компьютера с его IP-адресом. Каждая строка файла /etc/hosts должна начинаться с IP-адреса, за которым следует имя данного узла. Следом за именем можно записать произвольное число псевдонимов этого узла.

Даже если ваш компьютер не подключен к сети, в файле /etc/hosts должна быть прописана хотя бы одна строка следующего вида.

127.0.0.1 localhost localhost.localdomain

Если же ваш компьютер подключен к TCP/IP сети, то в этом файле дополнительно нужно прописать строку вида

192.168.0.15 host_name host_name.localdomain

Файл /etc/hosts используется в механизмах разрешения имен. В больших сетях трудно было бы поддерживать в актуальном состоянии файлы /etc/hosts на всех компьютерах, если бы это был основной инструмент для определения IP-адресов по именам. Поэтому обычно для разрешения имен используются серверы DNS. Однако файл /etc/hosts все равно необходим, хотя бы для обращения к серверу DNS. Поэтому в нем имеет смысл указать IP-адреса и соответствующие имена шлюзов и серверов DNS и NIS. А чтобы все приложения использовали этот файл при разрешении имен, должен иметься файл /etc/hosts.conf, содержащий строку

которая говорит, что при разрешении имен сначала должен использоваться файл /etc/hosts, а затем должно происходить обращение к серверу DNS. В большинстве случаев в файле /etc/hosts.conf достаточно иметь две строки:

Эти параметры указывают системе преобразования имен, что надо просмотреть файл /etc/hosts перед тем, как посылать запрос к серверу, и что следует возвращать все найденные в /etc/hosts адреса для данного имени, а не только первый.

Но настройка механизма разрешения имен не ограничивается редактированием файлов /etc/hosts и /etc/hosts.conf. Необходимо еще указать компьютеру имена серверов DNS. Они прописываются в файле /etc/resolv.conf. Этот файл имеет весьма простой формат. Это текстовый файл, каждая строка которого задает один из параметров системы преобразования имен. Как правило, используются три ключевых слова-параметра:

  • domain — задает имя локального домена.
  • search — задает список имен доменов, которые будут добавляться к имени машины, если вы не укажете явно имени домена. Это позволяет ограничить область поиска и избежать некоторых ошибок (например, вы ищете компьютер linux.msk.ru, а механизм разрешения имен выведет вас на linux.spb.ru).
  • nameserver — этот параметр, который вы можете указывать несколько раз, задает IP-адрес сервера преобразования имен, на который ваша машина будет посылать запросы. Повторяя этот параметр, вы можете задать несколько серверов.

Если вы не собираетесь заводить поддержку сервиса имен для своей сети (что является довольно сложной организационной и технической проблемой), и доверяете ведение своих имен администратору локальной сети или вашему IP-провайдеру, то вам достаточно задать файл /etc/resolv.conf примерно следующего вида:

search abcd.ru xyz.edu.ru

В этом примере машина находится в домене abcd.ru. Если вы зададите имя машины, не указывая домена, например "pc1” , то система преобразования имен попытается сначала найти машину "pc1.abcd.ru” , а в случае неудачи — "pc1.xyz.edu.ru” . Для преобразования имен ваша машина будет обращаться к серверам по адресам "192.168.10.1” и "192.168.12.1”.

13.2.5. Тестирование сетевого соединения

Чтобы проверить, соединяется ли ваш компьютер с сетью, попробуйте дать команду ping , указав ей в качестве параметра IP-адрес одного из компьютеров сети. Пусть, например, вам известно (узнайте реальный номер и имя у администратора сети), что в сети есть компьютер с IP-адресом 192.168.0.2 и именем pc1. Тогда вы должны дать команду:

[user]$ ping 192.168.0.2

или (тут вы одновременно проверяете и работу службы DNS)

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

64 bytes from 192.168.0.2: icmp_seq=0 ttl=32 time=1.2 ms

64 bytes from 192.168.0.2: icmp_seq=1 ttl=32 time=1.0 ms

64 bytes from 192.168.0.2: icmp_seq=2 ttl=32 time=1.0 ms

64 bytes from 192.168.0.2: icmp_seq=3 ttl=32 time=1.0 ms

64 bytes from 192.168.0.2: icmp_seq=4 ttl=32 time=1.1 ms

Это означает, что сетевое соединение работает. Для того чтобы прервать тестирование сети, нажмите комбинацию клавиш + .

13.2.6. Утилита netconf

В предыдущих разделах я попытался подробно и последовательно изложить, каким образом можно настроить выход в сеть путем прямого редактирования конфигурационных файлов. Впрочем, настройки локальной сети можно производить и с помощью специальных утилит netconf или netcfg , которые являются просто составной частью пакета linuxconf . Первая из них работает в графическом режиме, а вторая — в текстовом.

Рис. 13.1. Главное меню программы netconf

Надо только иметь в виду, что многие опытные пользователи Linux критически относятся к возможностям пакета linuxconf и предпочитают прямое редактирование конфигурационных файлов. Но для новичка эти утилиты могут оказаться удобнее, поэтому дадим их краткую характеристику на примере программы netconf . Запустив ее, вы увидите окно, изображенное на рис. 13.1.

Для того чтобы задать имя вашего компьютера, надо нажать кнопку Basic host information , после чего появится еще одно окно с пятью закладками. На закладке Host name задается имя компьютера, а на закладке Adaptor1 — параметры IP-соединения (см. рис. 13.2).

Рис. 13.2. Задание имени через netconf

Рис. 13.3. Настройка сетевого адаптера

Можно ввести параметры непосредственно в появившиеся строки ввода (если вы знаете, что нужно вводить), а можно выбрать подходящий вариант из списка, который появляется, если щелкнуть мышкой по треугольнику в конце строки. После завершения ввода параметров надо нажать экранную кнопку Accept .

Адрес сервера DNS и настройка системы разрешения имен задается в окне, появляющемся при нажатии на кнопку Name server specification (DNS) программы netconf (рис. 13.3). При выходе из программы после завершения редактирования появится дополнительное окно с запросом (рис. 13.4), в котором надо выбрать вариант Activate the changes .

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

Рис. 13.4. Настройка системы разрешения имен через netconf ,

Рис. 13.5. Сохранение изменений, сделанных через netconf

В. Костромин (kos at rus-linux dot net) — 13.2. Настройка сетевых интерфейсов Версия для печати

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *