- Настройка TCP/IP в Debian
- проверка наличия драйверов сетевой карты
- просмотр текущей конфигурации сети
- динамическая настройка параметров сети
- включение / отключение сетевого интерфейса
- настройка маршрутизации
- добавление маршрутов
- просмотр таблицы маршрутов
- удаление маршрутов
- настройка DNS
- настройка параметров сети с помощью файлов конфигураций
- расположение конфигурационных файлов
- структура конфигурационных файлов
- interfaces
- resolv.conf
- перезагрузка сетевого сервиса
- примеры файлов
- Настройка сетевой маршрутизации Linux – команда route
- Как работает маршрутизация?
- Синтаксис и основные опции
- Примеры использования
- Маршрутизация в Linux
- Материал из Xgu.ru
- Содержание
- [править] Команды
- [править] Использование route
- [править] Использование ip
- [править] Действия с маршрутами
- [править] Equal Cost Multi Path
- [править] IPv6
- [править] Просмотр маршрутов до определенной сети
- [править] Пересылка пакетов между интерфейсами
- [править] Конфигурационные файлы
- [править] Policy routing
Настройка TCP/IP в Debian
проверка наличия драйверов сетевой карты
Чтобы узнать, загружены ли драйверы сетевой карты, запустите команду:
dmesg | grep eth
Если в результате Вы увидите какие-либо сообщения, содержащие текст ethX, то значит, драйверы установлены успешно, и необходимо только поднять/настроить интерфейс сетевой карты.
просмотр текущей конфигурации сети
Для того, чтобы узнать текущие параметры сети в Debian, есть очень простой способ — запустите команду:
Если среди отображаемых интерфейсов не присутствуют интерфейсы ethX (eth0, eth1, . ), то либо не загружены драйвера сетевой карты (она не опознана), либо не поднят сетевой интерфейс.
динамическая настройка параметров сети
Обратите внимание: в данном случае настройки сети будут применяться сразу же, но они не сохранятся после перезагрузки!
Для настройки IP адреса и маски подсети наберите в командной строке:
ifconfig -a netmask
например:
ifconfig -a eth0 192.168.1.15 netmask 255.255.255.0
для настройки шлюза по умолчанию укажите в командной строке
route add default gw
например:
route add default gw 192.168.1.1
включение / отключение сетевого интерфейса
После того, как Вы настроили сеть, она по-прежнему может бьть недоступна. Причиной может быть то, что не включен (т.е. не «поднят») сетевой интерфейс.
Включить сетевой интерфейс можно командой:
ifconfig up
например:
ifconfig eth0 up
или (основной способ) командой:
ifup
например:
ifup eth0
Отключить сетевой интерфейс не менее просто:
ifconfig down
например:
ifconfig eth0 down
или (основной способ) командой
ifdown
например:
ifdown eth0
настройка маршрутизации
добавление маршрутов
Маршруты добавляются командой:
route add -net / gw
например:
route add -net 192.168.5.0/24 gw 10.0.1.1
просмотр таблицы маршрутов
Для просмотра таблицы маршрутизации запустите команду:
netstat -rn
или
route -n
удаление маршрутов
Маршруты удаляются командой:
route delete -net /
например:
route delete -net 192.168.5.0/24
настройка DNS
возможна только через файл /etc/resolv.conf (см. ниже)
настройка параметров сети с помощью файлов конфигураций
Если Вы хотите настроить сеть таким образом, чтобы указанные параметры сети сохранялись и после перезагрузки системы, Вам необходимо изменить конфигурационные файлы.
расположение конфигурационных файлов
Настройка параметров сети (IP адрес, маска сети, шлюз, параметры DNS) производится в файл interfaces, который находится в папке /etc/network/.
Маршруты (из таблицы маршрутизации) также хранятся в файле /etc/network/interfaces.
Параметры DNS описываются в файле /etc/resolv.conf.
структура конфигурационных файлов
interfaces
Файл находится в папке /etc/network/.
Название параметра | Описание параметра | Возможные значения | Примеры использования |
---|---|---|---|
iface | ethX inet dhcp ethX inet static . | iface eth0 inet dhcp iface eth1 inet static | |
allow-hotplug | ethX | allow-hotplug eth0 | |
address | IP адрес | address 192.168.1.5 | |
netmask | маска подсети | netmask 255.255.255.0 | |
gateway | шлюз | gateway 192.168.1.1 | |
dns-nameservers | DNS сервер(ы) | dns-nameservers 192.168.1.1 dns-nameservers 192.168.1.1 192.168.5.1 | |
auto | автоматическое включение интерфейса при загрузке (должно быть последним параметром из всех параметров интерфейса) | ethX | auto eth0 auto eth1 |
up route | маршруты (настройка маршрутизации) | add -net / gw | up route add -net 192.168.0.0/24 gw 192.168.1.1 up route add -net 192.168.5.0/24 gw 192.168.1.10 up route add -net 5.5.5.0/24 gw 192.168.0.5 |
resolv.conf
Этот файл находится в папке /etc.
Название параметра | Описание параметра | Возможные значения | Пример использования |
---|---|---|---|
nameserver | адрес DNS сервера. Таких записей может быть несколько (не более 3-х) | nameserver 192.168.1.1 nameserver 192.168.1.2 | |
domain | имя локального домена (?) | domain mydom.local | |
search | подставляемое имя домена, если адрес задан не полностью | search mydom.local |
перезагрузка сетевого сервиса
Перезагрузить сетевой сервис (при этом перезагружаются все сетевые интерфейсы) в Debian можно командой:
/etc/init.d/networking restart
При этом перезапускаются все интерфейсы из файла /etc/network/interfaces.
примеры файлов
Пример файла /etc/network/interfaces:
Источник
Настройка сетевой маршрутизации Linux – команда route
Для определения и задания маршрутов в сетях существуют динамическая и статическая маршрутизации. В первом случае маршруты задаются специальным демоном маршрутизации, который модифицирует соответствующим образом таблицу маршрутизации ядра. Во втором случае маршруты задаются администратором/пользователем при помощи команды route. Маршруты, заданные командой route не изменяются, даже если включена динамическая маршрутизация.
Как работает маршрутизация?
Прежде всего нужно понимать, что процессы маршрутизации осуществляются на сетевом уровне. Для каждого пакета проводится сравнение его целевого IP-адреса с записями в таблице маршрутизации. Когда обнаруживается хотя бы частичное соответствие с одним из шлюзов в таблице, пакет направляется к следующему узлу (шлюзу), соответствующему найденному маршруту. И здесь может возникать несколько ситуаций:
Первая — когда, например, пакет адресуется компьютеру, находящемуся в той же сети, что и источник пакета, а точнее сказать — его отправитель. В данной ситуации для такого пакета следующим шлюзом является один из локальных интерфейсов и он (пакет) отправляется сразу к адресату. Такие «явные» и «короткие» шлюзы обычно задаются во время конфигурирования сетевых интерфейсов — командой ifconfig.
Вторая — когда адрес назначения пакта не соответствует ни одному шлюзу в таблице маршрутизации. В таком случае, во избежание коллизий в сети и её чрезмерной нагрузки должен быть задействован шлюз по-умолчанию. Другими словами, это такой маршрут, который указывает системному ядру: все остальные пакеты (без соответствий в таблице маршрутов) направляй сюда. Если шлюз по-умолчанию не будет предусмотрен, то отправляющей стороне посылается сообщение о недостижимости сети или узла.
Как правило, локальные сети имеют единственный шлюз во внешнюю среду, например в Интернет. В свою очередь, в сети Интернет таких «стандартных маршрутов» не существует.
Синтаксис и основные опции
Основное назначение команды route – добавление и удаление сетевых маршрутов для системного ядра, а также просмотр содержимого таблицы маршрутизации. Эта команда, хотя и работает в разных UNIX-подобных системах одинаково, однако имеет резко отличающийся синтаксис в зависимости от используемой системы.
В общем случае прототипом команды route является следующая запись:
Эта команда добавит шлюз с обратной связью через виртуальное устройство lo, которое используется для этой цели в Linux-системах. Опции -net и -host используются для указания адреса, характеризующего либо сеть, либо узел соответственно как пункты назначения. Для определения подсети служит опция netmask, для задания приоритета шлюза — опция metric. Сетевой интерфейс обозначается опцией dev. Кроме описанных выше для команды route также существуют и другие используемые ей опции, которые приведены в следующей таблице:
Опция
Назначение
Шлюз, через который должны достигаться сеть или узел. Задаётся в виде имени узла или точечной записи адреса.
Устанавливает значение MTU (максимальную величину пакета) в байтах.
Устанавливает размер TCP-окна для задаваемого шлюза в байтах. Обычно используется в сетях AX.25.
Устанавливает начальное время отклика для TCP-соединений по данному маршруту в миллисекундах.
Задаёт блокирующий маршрут, который должен приводить к остановке процедуры поиска маршрутов. Полезно при скрытии сетей для использования в них шлюз по-умолчанию.
Заставляет работать с таблицей маршрутизации ядра. Эта опция в большинстве систем используется по-умолчанию, поэтому часто опускается.
Заставляет работать с кэшем маршрутизации ядра.
Включает подробный режим работы команды route.
Использование числового формата адресов вместо попыток определения символьных наименований узлов. Можно использовать в случае определения проблем с соединениями к DNS.
Использовать формат вывода команды netstat для отображения содержимого таблицы маршрутов. Опция -ee сгенерирует самый подробный отчёт с полными наименованиями параметров таблицы маршрутов.
Примеры использования
Определить маршрут к сети, которая должна быть достигнута через сетевой интерфейс eth0:
Здесь для команды route не указывается сам интерфейс, поскольку предполагается, что узлу nodeone соответствует адрес 192.168.1.2. Далее, route «узнаёт», что маршрут нужно проложить именно через eth0 благодаря тому, что системное ядро анализирует все доступные интерфейсы на предмет их конфигурации и сравнивает адрес пункта назначения с сетевой частью сетевых (сконфигурированных) интерфейсов. В данном случае ядро обнаруживает, что eth0 – тот интерфейс (с адресом 192.168.1.2), которому соответствует конечный адрес, т. е. 192.168.1.0.
Задание шлюза по-умолчанию:
Доступ в локальную сеть Ethernet через сетевой интерфейс eth0:
Здесь 192.168.10.0 – сеть, к которой нужно установить доступ (маршрут).
Вывод содержимого таблицы маршрутов ядра осуществляется командой route без параметров, для подробных результатов используется опция -ee.
Также можно использовать сокращённую запись для задания маски подсети:
Следует отметить, что шлюзы, установленные командой route будут существовать до перезагрузки системы. Для их использования на постоянной основе необходимо нужные команды прописать в файле. В Ubuntu это /etc/network/interfaces.
Например для настройки маршрутизации сети 192.168.10.0/24 через шлюз 192.168.10.1 интерфейс eth0, это команда
$ route add -net 192.168.10.0/24 gw 192.168.10.1 eth0
файл /etc/network/interfaces будет выглядеть следующим образом
В Centos/Redhat это файл /etc/sysconfig/network-scripts/route-eth0 для интерфейса eth0 если же название интерфейса другое, то название файла будет route- . Если этого файла нет, то его нужно создать. Для настройки выше указанного примера, добавьте в файл следующие строки
Также можно прописать и несколько дополнительных маршрутов, для этого просто указываем их в новой строке. После чего сохраняем файл и рестартуем сетевую службу
Если вы нашли ошибку, пожалуйста, выделите фрагмент текста и нажмите Ctrl+Enter.
Источник
Маршрутизация в Linux
Материал из Xgu.ru
Linux предоставляет большой набор функций для маршрутизации и инструменты для ее настройки. Ядро 2.6.x поддерживает:
- Простую статическую маршрутизацию.
- Equal Cost Multi Path маршруты (маршруты до одной сети с одинаковым весом, которые выбираются с равной вероятностью).
- Blackhole-маршруты.
- Множественные таблицы маршрутизации.
- Policy Based Routing