Настройка сервера Linux и Windows
ITShaman - Сайт для АЙТИшников!
"Машины должны работать. Люди должны думать."
(девиз компании IBM)

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

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

1. Как посмотреть текущие сетевые настройки в Linux?
Наверх


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

# sudo ifconfig
Пример вывода:
eth0Link encap:Ethernet HWaddr 00:11:5b:91:25:3e
inet addr:192.168.1.18 Bcast:192.168.255.255 Mask:255.255.0.0
inet6 addr: fe80::211:5bff:fe91:253e/64 Диапазон:Ссылка
ВВЕРХ BROADCAST RUNNING MULTICAST MTU:1500 Metric:1
RX packets:648009 errors:0 dropped:0 overruns:0 frame:0
TX packets:1075413 errors:0 dropped:0 overruns:0 carrier:0
коллизии:0 txqueuelen:1000
RX bytes:70177943 (70.1 MB) TX bytes:1536487024 (1.5 GB)
Прервано:19 Base address:0xd000
lo Link encap:Локальная петля (Loopback)
inet addr:127.0.0.1 Mask:255.0.0.0
inet6 addr: ::1/128 Диапазон:Узел
ВВЕРХ LOOPBACK RUNNING MTU:16436 Metric:1
RX packets:106 errors:0 dropped:0 overruns:0 frame:0
TX packets:106 errors:0 dropped:0 overruns:0 carrier:0
коллизии:0 txqueuelen:0
RX bytes:13776 (13.7 KB) TX bytes:13776 (13.7 KB)

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

# sudo ifconfig -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 набираем команду:

# sudo ethtool eth0
Вывод:
Supported ports: [ TP MII ]
Supported link modes:10baseT/Half 10baseT/Full
100baseT/Half 100baseT/Full
Supports auto-negotiation: Yes
Advertised link modes: 10baseT/Half 10baseT/Full
100baseT/Half 100baseT/Full
Advertised auto-negotiation: Yes
Speed: 100Mb/s
Duplex: Full
Port: MII
PHYAD: 1
Transceiver: internal
Auto-negotiation: on
Supports Wake-on: pg
Wake-on: d
Current message level: 0x000000c5 (197)
Link detected: yes

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

2. Как остановить/запустить или перезагрузить сетевой интерфейс?
Наверх


Для остановки сетевого интерфейса eth0 существует команда:
# sudo ifconfig eth0 down

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

Для возобновления работы сетевого интерфейса eth0:
# sudo ifconfig eth0 up
Чтобы перезапустить все сетевые интерфейсы ОС вводим команду:
# sudo /etc/init.d/networking restart

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

Так же по аналогии производится остановка всех интерфейсов:
# sudo /etc/init.d/networking stop
и их запуск:
# sudo /etc/init.d/networking start

3. Как изменить сетевые настройки?
Наверх


Чтобы изменить сетевые настройки в ОС Linux можно пойти двумя путями:
  1. использовать команды для присвоения параметров сетевых интерфейсов;
  2. отредактировать конфигурационный файл, содержащий параметры сетевых интерфейсов.

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

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

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

    Чтобы задать основной IP-адрес и маску сети для интерфейса eth0:
    # sudo ifconfig eth0 192.168.0.1 netmask 255.255.255.0
    Для присвоения дополнительного IP-адреса интерфейсу eth0:
    # sudo ifconfig eth0:0 10.10.0.1 netmask 255.255.255.0
  2. Настройка сети с помощью редактирования конфигурационного файла.

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

    # sudo nano /etc/network/interfaces

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

    auto lo
    iface lo inet loopback
    auto eth0
    iface eth0 inet static
    address 192.168.1.18
    netmask 255.255.0.0
    gateway 192.168.1.253

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

    Строка 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 должен быть приведен к виду:

    auto lo
    iface lo inet loopback
    auto eth0
    iface eth0 inet dhcp

4. Дополнительные сетевые настройки: DNS-сервера, MAC-адреса и скорость сетевого интерфейса.
Наверх


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

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

Для этого нужно открыть конфигурационный файл командой:
# sudo nano /etc/resolv.conf
Вывод:
# Generated by NetworkManager
nameserver 192.168.1.253

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

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

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

# sudo ifconfig eth0 hw ether 00:01:02:03:04:05
Последнее число - это новый MAC-адрес.

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

auto eth0
iface eth0 inet dhcp
pre-up ifconfig eth0 hw ether 00:01:02:03:04:05

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

Для строгого задания скорости сетевой карты:
# sudo ethtool -s eth0 speed 100 duplex full autoneg off
# Принудительно задать скорость сетевому интерфейсу 100Mbit и режим Full Duplex и отключить автоматическое определение
# sudo ethtool -s eth0 speed 10 duplex half autoneg off
# Принудительно задать скорость сетевому интерфейсу 10Mbit и режим Half Duplex и отключить автоматическое определение
Статья опубликована 24.08.2009 · Автор статьи: Зюзгин Иван
Статья относится к linux, сеть
Случайные 7 статей:
  1. QComment.ru - новая биржа комментариев
  2. Web-браузер Chrome 27
  3. Как "подружить" Claws-Mail 3.8.1 и апплет уведомлений Ubuntu?
  4. Подборка из 8 тем значков для Ubuntu
  5. Синхронизация времени через Интернет в Ubuntu
  6. Положение о порядке подключения и работы автоматизированных рабочих мест сотрудников предприятия в сети Интернет
  7. Запуск Photoshop CS4 в Linux через Wine
Комментарии [22]
  1. sergo #
    1 Ноябрь, 17: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?

  2. Mut@NT #
    1 Ноябрь, 18:07

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

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

  3. sergo #
    1 Ноябрь, 21:44

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

  4. Mut@NT #
    2 Ноябрь, 02:45

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

  5. gpns #
    14 Май, 10:36

    Думаю стоит попровить строку: 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

  6. Mut@NT #
    16 Май, 05:02

    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 показывается та маска, которую я установил?

  7. GydruS #
    13 Сентябрь, 16:32

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

  8. Mut@NT #
    14 Сентябрь, 11:34

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

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

  9. andrey #
    18 Сентябрь, 16:50

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

  10. Mut@NT #
    20 Сентябрь, 00:18

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

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

  11. andrey #
    20 Сентябрь, 11:38

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

  12. Mut@NT #
    21 Сентябрь, 10:22

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

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

  13. andrey #
    21 Сентябрь, 11:22

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

  14. Serpent22 #
    3 Ноябрь, 00:21

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

  15. Артем #
    27 Январь, 10:11

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

  16. виктор #
    27 Май, 15:33

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

  17. Artur #
    4 Октябрь, 16:42

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

  18. nick #
    7 Декабрь, 02:17

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

  19. Марина #
    27 Декабрь, 14:12

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

  20. papick #
    30 Июль, 10:05

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

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

  21. Комполюбитель #
    28 Август, 20:01

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

  22. valera #
    21 Январь, 00:20

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

Имя (обязательное поле)
e-mail (обязательное поле) Сайт
Текст комментария:
IT-новости
Популярное
Облако тегов
При цитировании документа активная ссылка на сайт обязательна.
Администрирование и настройка серверов, рабочих станций на базе ОС Linux и Windows. www.itshaman.ru - Настройка Linux и Windows © 2009 - 2017