Вы просматриваете: » » Ubuntu и сети
Категория: Net, опубликовал: rob96, добавлено: 14-11-2014, 14:33
 




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

Интерфейсы Ethernet
Интерфейсы Ethernet обозначаются в системе как ethX, где X является числом. Первый интерфейс Ethernet обычно обозначается eth0, второй eth1, и так далее в порядке возрастания чисел.

Определение 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


Логические имена интерфейсов Ethernet
Логические имена интерфейсов настраиваются в файле
/etc/udev/rules.d/70- persistent-net.rules. Если вы захотите определить, какой интерфейс получит определённое логическое имя, найдите строку, соответствующую физическому MAC-адресу интерфейса, и измените значение NAME=ethX на желаемое логическое имя. Перегрузите систему для применения изменений.

Настройки интерфейса 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.
Ниже приведен пример того, как интерфейс, определённый как eth0, может быть постоянно настроен на скорость порта 1000 Мб/с в режиме полного дуплекса.
auto eth0
iface eth0 inet static
pre-up /sbin/ethtool -s eth0 speed 1000 duplex full


Несмотря на то, что пример выше показывает интерфейс, настроенный статично, это работает и с другими методами, такими как DHCP. Этот пример призван просто продемонстрировать правильное размещение строки pre-up по отношению к остальной части конфигурационного файла интерфейса.

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

Временное назначение 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)
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. Вам придётся удалять или менять эти значения вручную.

Динамическое назначение IP-адреса (клиент DHCP)
Чтобы настроить ваш сервера на использование DHCP для динамического присвоения адреса, добавьте dhcp метод в адресную секцию inet для соответствующего интерфейса в файле /etc/network/interfaces. Пример ниже предполагает, что вы настраиваете ваш первый интерфейс Ethernet, обозначенный как eth0.
auto eth0
iface eth0 inet dhcp


Добавив настройку интерфейса как показано выше, вы можете вручную включить интерфейс командой ifup, которая активизирует процесс DHCP через dhclient.
sudo ifup eth0

Для отключения интерфейса вручную вы можете воспользоваться командой ifdown, которая запустит процесс освобождения DHCP и остановки интерфейса.
sudo ifdown eth0

Статическое назначение 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

Интерфейс Loopback (обратной петли)
Интерфейс loopback определяется системой как lo и по умолчанию задает адрес 127.0.0.1. Он может быть выведен командой ifconfig.
ifconfig lo
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


Разрешение имён
Под разрешением имени по отношению к IP-сетям подразумевается процесс определения IP-адреса по имени хоста, упрощающий идентификацию ресурса в сети. В следующем разделе показано, как правильно настроить вашу систему для разрешения имён с помощью DNS и статических записей имен хостов.

Настройка клиента 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

Для настройки разрешений добавьте 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 потерпит неудачу.

Статические имена хостов
Статические имена хостов — это локально определённые соотношения «имя хоста - IP», находящиеся в файле /etc/hosts. Значения, определённые в файле 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.

Настройка переключения сервиса имён
Последовательность, в которой ваша система выбирает метод разрешения имен по 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-запрос.
• mdns4 представляет параллельный (multicast) DNS-запрос. Для изменения последовательности вышеупомянутых методов разрешения имен вы можете просто заменить строку hosts: на значение по вашему выбору. Например, если вы предпочитаете использовать последовательный DNS до параллельного DNS, вы можете изменить строку в /etc/nsswitch.conf как показано ниже:
hosts: files dns [NOTFOUND=return] mdns4_minimal mdns4

Использование моста
Соединение нескольких интерфейсов — наиболее продвинутая настройка, но очень полезная во множестве сценариев. Один вариант — установка взаимодействия между несколькими сетевыми интерфейсами и затем использование защитного экрана (firewall) для фильтрования трафика между двумя сегментами сети. Другой сценарий — использование связывания на системе с одним интерфейсом для разрешения виртуальным машинам иметь прямой доступ во внешнюю сеть. Следующий пример раскрывает последний сценарий.
Перед настойкой взаимодействия вам потребуется установить пакет bridgeutils. Для установки пакета введите в терминале:
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
Введите соответствующие значения для вашего физического
интерфейса и сети.

Теперь перезапустите сеть для разрешения взаимодействия интерфейсов:
sudo /etc/init.d/networking restart
Теперь новый мост между интерфейсами поднят и работает. Утилита
application>brctl



     Комментариев оставлено: (0)    Просмотров: 2526   
Теги:   net, unix, Linux, ubuntu, dhcp, ip, dns

Другие новости по теме:

Уважаемый посетитель, Вы зашли на сайт как незарегистрированный пользователь.
Мы рекомендуем Вам зарегистрироваться либо войти на сайт под своим именем.

Комментарии к новости:

Оставить свой комментарий:

Полужирный Наклонный текст Подчеркнутый текст Зачеркнутый текст | Выравнивание по левому краю По центру Выравнивание по правому краю | Вставка смайликов Вставка ссылкиВставка защищенной ссылки Картинка Выбор цвета | Скрытый текст Вставка цитаты Преобразовать выбранный текст из транслитерации в кириллицу Вставка спойлера
Введите два слова, показанных на изображении:


управление аккаунтом
Профиль пользователя
, вы вошли как гость


Если вы на сайте впервые, то вы можете зарегистрироваться!

Вы забыли пароль?
самые интересные новости
Популярные новости
Материалы данного ресурса принадлежат пользователям и предназначены для расширения кругозора всех желающих
Unix Windows Техника Железо Mobile For Games Сплетни Net
  • Шпаргалки