Автор Тема: Пошаговая инструкция по настройке сетевой карты  (Прочитано 38361 раз)

greyzy

  • Гость
Я совсем недавно в линукс, натолкнулся на проблему конфигурирования сетевой карты, читал наш форум, другие источники, все проблемы были устранены, но заметил, что вся информация разрознена по разным местам, там немного, там чуть-чуть, и вот предлагаю, скомпилированную, адаптированную статью по настройке сетевой карты в альтлинукс для новичков, ну и сам чтобы не забыл :)
Трениновки проводились на alt linux 4.1.1 Desktop.

СТАТЬЯ ВЫЛОЖЕНА НА ВИКИ http://www.altlinux.org/Настройка_сетевой_карты,_краткое_пособие_для_начинающих, с учетом дополнений, осуждение ведется в этой ветке http://forum.altlinux.org/index.php/topic,4563.0.html
В статье не рассматривается графическое конфигурирование, это я пока не освоил  ;) Также предполагается, что новички умеют "добывать" консоль суперпользователя root (кликаем правой клавишей по рабочему столу, выбираем Запустить Терминал (либо и быстрее Ctrl+T), потом идем Сеанс-Новая консоль с правами root, вводим пароль root'а), а также знают, что в ней команда mc вызывает менеджер файлов Midnight Commander, в котором нажатие на текстовом файле клавиши F4 позволяет этот файл редактировать. Вообще все изменения конфигурационных файлов производятся от пользователя root
04.11.2009 Статья обновлена с учетом замечаний Const, Мню
Для начала выясним имя компьютера
# hostname
alt777.altdomain.local

Изменение имени компьютера (если есть такая потребность разумеется)
hostname новое_имя
reboot
Примечание1: Эта команда изменит имя компьютера до первой перезагрузки.Поэтому, чтобы надежно, откроем  файл по адресу /etc/sysconfig/network для редактирования и найдем там строку
mcedit /etc/sysconfig/network
HOSTNAME=alt777.altdomain.local
Меняем на новое имя, жмем F2 (сохранить? yes), перезагружаемся
Примечание 2: Если ваш компьютер будет участником сети, и возможно будет введен в домен, стоит еще на этапе инсталляции задать имя в виде хост.домен.local, а не хост.домен

Какие сетевые карты в системе
Теперь выясним, есть ли вообще у нас сетевые в компьютере, введем команду
lspci -vБудет выведен длинный список многих ваших устройств, ваша сетевая должна выглядеть примерно так:
02:00.0 Ethernet controller: Attansic Technology Corp. L1 Gigabit Ethernet Adapter (rev b0)
        Subsystem: ASUSTeK Computer Inc. Device 8226
        Flags: bus master, fast devsel, latency 0, IRQ 219
        Memory at fe9c0000 (64-bit, non-prefetchable) [size=256K]
        Expansion ROM at fe9a0000 [disabled] [size=128K]
        Capabilities: [40] Power Management version 2
        Capabilities: [48] Message Signalled Interrupts: Mask- 64bit+ Queue=0/0 Enable+
        Capabilities: [58] Express Endpoint, MSI 00
        Kernel driver in use: atl1
        Kernel modules: atl1
Если вы хотите увидеть только сетевую карту, примените фильтр grep
# lspci -v | grep Eth
02:00.0 Ethernet controller: Attansic Technology Corp. L1 Gigabit Ethernet Adapter (rev b0)

Вывод информации о сетевом интерфейсе
Узнаем собственно сетевой адрес нашего компьютера, воспользуемся командой ip addr show либо если еще короче ip a
ip addr show
1: lo: <LOOPBACK,UP,LOWER_UP> mtu 16436 qdisc noqueue
    link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00
    inet 127.0.0.1/8 scope host lo
2: eth0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast qlen 1000
    link/ether 00:1e:8c:da:6a:1e brd ff:ff:ff:ff:ff:ff
    inet 192.168.0.20/24 brd 192.168.0.255 scope global eth0
lo внутренний адрес и есть всегда, eth0 это имя нашего интерфейса, link/ether 00:1e:8c:da:6a:1e мас-адрес, ну дальше думаю понятно интуитивно, обратите внимание, если из вашей сетевой карты выдернут шнур, но появится слово NO-CARRIER  
# ip addr show
1: lo: <LOOPBACK,UP,LOWER_UP> mtu 16436 qdisc noqueue
    link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00
    inet 127.0.0.1/8 scope host lo
2: eth0: <NO-CARRIER,BROADCAST,MULTICAST,UP> mtu 1500 qdisc pfifo_fast qlen 1000
    link/ether 00:1e:8c:da:6a:1e brd ff:ff:ff:ff:ff:ff
    inet 192.168.0.20/24 brd 192.168.0.255 scope global eth0

Команда ip route show (или просто ip r) выведет вам ваш шлюз
# ip route show
192.168.0.0/24 dev eth0  proto kernel  scope link  src 192.168.0.20
default via 192.168.0.10 dev eth0
Команда ethtool имя_интерфейса покажет вам некоторые характеристики вашего соединения
# ethtool eth0
Settings for eth0:
        Supported ports: [ TP ]
        Supported link modes:   10baseT/Half 10baseT/Full
                                100baseT/Half 100baseT/Full
                                1000baseT/Full
        Supports auto-negotiation: Yes
        Advertised link modes:  10baseT/Half 10baseT/Full
                                100baseT/Half 100baseT/Full
                                1000baseT/Full
        Advertised auto-negotiation: Yes
        Speed: 1000Mb/s
        Duplex: Full
        Port: Twisted Pair
        PHYAD: 0
        Transceiver: internal
        Auto-negotiation: on
        Supports Wake-on: umbg
        Wake-on: d
        Link detected: yes
А если введете man ethtool, и изучите, то даже сможете кое-что в этих характеристиках изменить.

Это то, с чем мы будем работать.

Собственно конфигурирование.
Будем исходить из того, что при установке системы вы выбрали получать адрес автоматически, т.е. по dhcp, в этом случае, если dhcp-сервер нормально функционирует, то вся ваша сетевая сконфигурирована. Представим, что вы теперь хотите настроить вашу сетевую карту на статический адрес.
Отключим пока нашу сетевую карту
ip link set eth0 downНастройки сети в альт линукс десктоп находятся в папке /etc/net/ifaces, там, если у вас одна сетевая карта, должно быть четыре папки
/default
/eth0
/local
/unknown

Нас интересует папка eth0, в которой будет лежать один файл options, откроем его для редактирования
mcedit /etc/net/ifaces/eth0/optionsОткроется файл и мы увидим строки
TYPE=eth
DISABLED=no
NM_CONTROLLED=no
BOOTPROTO=dhcp
Меняем в последней строке на BOOTPROTO=static, сохраняем F2, выходим F10
Теперь нам нужно создать файл, в котором мы запишем наш адрес и маску сети, пусть это будет 192.168.0.48/255.255.255.0
#создаем пустой файл ipv4address в каталоге /etc/net/ifaces/eth0/
echo -n>/etc/net/ifaces/eth0/ipv4address
#вписываем ip/маску
echo 192.168.0.48/24>/etc/net/ifaces/eth0/ipv4address
Создадим файл, в который поместим адрес нашего шлюза
echo -n>/etc/net/ifaces/eth0/ipv4route
echo default via 192.168.0.10>/etc/net/ifaces/eth0/ipv4route
Файл с описанием dns-сервера /etc/resolv.conf у вас по идее должен быть, но если нет, то создадим его и запишем наш, а точнее ваш, dns-сервер
echo -n>/etc/resolv.conf
echo nameserver 192.168.0.9>/etc/resolv.conf
Включаем интерфейс
ip link set eth0 upПерезапускаем сеть (можно не включать сетевую, после перезапуска она и включится сама, просто показано как это делать)
service network restartТакже сеть можно перезапустить командой
/etc/init.d/network restartПлюс к restart есть команды stop и start, которые соответственно гасят всю сеть и включают ее.

Есть команды для изменения IP, маски и шлюза
ip addr add 192.168.0.XX/24 dev eth0и
ip route add dev eth0 XX.XX.XX.XXОднако эти команды меняют ip и шлюз до перезагрузки, для настоящего изменения нужно править файлы (именно эти файлы и отвечают за настройки вашей сетевой карты):
/etc/net/ifaces/eth0/ipv4address
/etc/net/ifaces/eth0/ipv4route
/etc/net/ifaces/eth0/options
/etc/resolv.conf
внося новые значения и делая затем service network restart

Собственно после этого все должно работать :) ... если у вас одна карта, а вот у меня их две. И все бы ничего, но есть такая проблема, имя второй карты eth1 и вот после включения компьютера могут менятся соответствия имен интерфейсов eth0 и eth1относительно сетевых - седня карта1 это eth0, завтра утром это eth1, т.е. "кто первый встал, того и тапки", грубое решение проблемы - встаешь и перетыкаешь кабель :) , но мне так не понравилось, и вот как удалось решить эту незадачу

Переименование имени сетевого интерфейса
Для начала я сменил имя у ненужной карты (это действо необязательно, но вдруг решите дать более информативное название, чем eth0 вашей сетевой, тут показано как это сделать на примере), отключаем ненужную сетевую:
ip link set eth1 downМеняем имя
ip link set eth1 name vyklТеперь нам нужно сменить название папки с настройками бывшей eth1 на новое название
mv /etc/net/ifaces/eth1 /etc/net/ifaces/vyklВсе, перезапускаем сеть

Закрепеление порядка загрузки сетевых карт
Для жесткого закрепления порядка загрузки наших сетевых используем udev, как я понял это "модуль управления модулями", у него существует ряд правил, по которым загружается система, и вот мы создадим правило для наших двух сетевых карт
echo -n>/etc/udev/rules.d/10-network.rulesПроверьте, может у вас уже есть такой файл, у меня не было
Открываем его для редактирования и вносим строки
mcedit /etc/udev/rules.d/10-network.rules
SUBSYSTEM=="net", ATTRS{address}=="00:1e:8c:da:6a:1e", NAME="eth0"
SUBSYSTEM=="net", ATTRS{address}=="00:14:d1:13:8b:96", NAME="vykl"
где ATTRS{address} это mac-адрес вашей сетевой, для его получения для каждой сетевой введите udevadm info -a -p /sys/class/net/<имя_интерфейса> | grep address
# udevadm info -a -p /sys/class/net/eth0 | grep address
    ATTR{address}=="00:1e:8c:da:6a:1e"
Обратите внимание, мак-адрес пишем маленькими буквами
Сохраняемся, таким образом первым всегда будет грузиться первая карта в списке и получать нужное имя, в данном случае eth0.

Полезные ссылки, написанные гораздо более грамотными людьми
man ip
про etcnet, то, на чем зиждется вся сеть в альте http://www.altlinux.org/Etcnet
про udev, к сожалению на нашем вики не нашел статьи, поэтому вики коллег http://wiki.archlinux.org/index.php/Udev_(Русский)

Повторюсь, я сам ламо коматозное в линукс, так что думаю и надеюсь, что уважаемые гуру и просто те, кто лучше знает поправят, если что-то здесь не так или совсем все не так. Ну и если где-то на форуме это есть, то и убрать материал ессно не долго, я просто не нашел чтобы все в одном месте :)
« Последнее редактирование: 07.11.2009 10:38:09 от greyzy »

greyzy

  • Гость
Подготовлена страница на вики по одной из тем в разделе Вопросы новичков http://www.altlinux.org/Настройка_сетевой_карты,_краткое_пособие_для_начинающих, будет полезна новичкам, желающие - дополняйте

Старница была обновлена с учетом замечаний Соnst, Мню, salomatin. Здесь изложен еще один материал для новичков от  salomatinа для еще более быстрого старта вашей сети http://forum.altlinux.org/index.php/topic,4563.msg64267.html#msg64267
« Последнее редактирование: 07.11.2009 10:43:34 от greyzy »

Оффлайн Мню

  • Давно тут
  • **
  • Сообщений: 45
Подготовлена страница на вики по одной из тем в разделе Вопросы новичков
Я прочитал твой пост и в старой ветке и на вики.
"если вы планируете ввести ваш компьютер в домен", я имел ввиду не Windows домен а DNS домен, т.е. указав сетевое имя ты уже "ввел" в DNS домен. Т.Е. совет использовать "myhost.mydomain.local", правильный, а вот предпосылка нет.
должно быть четыре папки, должно быть 2 папки, и по папке на каждый сетевой интерфейс. Так будет правильнее. В системе всегда есть виртуальный интерфейс "петля". В пятой платформе на каждый физический интерфейс будет по две папки. Для более ранних платформ нужно все настройки проводить для Eth0, а для 5й платформы для BrEth0. (Если чесно, я не понял смысла в BrEth0, и пользы от него, и тупо его грохнул)

Последняя строка отвечает за способ получения сетевой картой.
Вот тут чуть по подробней.
Адрес можно присвоить 3 способами.
static - IP адрес берется из настроек.
dhcp - IP адрес получается от сервера DHCP.
ipv4ll - IP адрес выбирается случайно из диапазона 169.254.0.0/16 (169.254.0.1-169.254.255.254)

Чуть добавить. Если в Вашей сети есть DHCP сервер, то стоит использовать DHCP способ получения адреса.
hint! В качестве DHCP сервера может работать и ADSL модем.
Допускается и смешанный способ получения адреса, например
BOOTPROTO=dhcp,static заставит систему попытается получить сетевой адрес с помощью DHCP сервера, и в случае неудачи назначит адрес статически. Бывает очень удобно, например на мобильных ПК.
hint! В мане указано, что нужно использовать в качестве разделителя дефис "dhcp-static", но это работать не будет, нужно использовать запятую, как показано в моем примере.
более подробно: man etcnet-options и _http://www.opennet.ru/man.shtml?topic=etcnet-options&category=5&russian=0

Настройка статического ip-адреса
Вот этот пункт, я бы вообще переработал, и поднял выше.
Что-то типа в папке ....../eth0 находятся следующие файлы которые отвечают за .....
options - общие настройки интерфейса.
ipv4address - содержит ip адрес и маску сети.
ipv4route - содержит маршруты доступные через этот интерфейс, а также может содержать маршрут по умолчанию.
resolv.conf - (только для 5й платформы) содержит список DNS серверов доступных через данный интерфейс.

Простейший пример. ИНЕТ провайдер "БиЛайн", он же "Корбина". Маршруты на локальные ресурсы должны быть описаны для сетевого интерфейса Ethernet, а шлюз по умолчанию для PPP интерфейса.

/etc/resolv.conf
А вот с этим файлом вообще заморочка.
В П5 он создается автоматически из файлов resolv.conf интерфейсов.
Его может переписать при старте PPP интерфейс в более ранней платформе, что более правильно.

Создайте пустой файл /etc/udev/rules.d/10-network.rules
1) Этот метод используется только на системах с последними обновлениями.
2) У меня такого файла нет. А есть 70-persistent.rules.
3) NAME="eth0" Использование имен EthX является плохой практикой. Хотя бы EthXX (eth00).
4) Прикреплять имена можно и по положению на шине. Например у меня 3 одинаковых карты. И мне удобно, что бы нижняя была для локальной сети, а верхняя для ADSL модема. А вот средняя должна быть привязана и по шине и по маку, второй провайдер привязывается к МАК адресу. Но это уже извращения.
« Последнее редактирование: 05.11.2009 11:44:41 от Мню »

Оффлайн Мню

  • Давно тут
  • **
  • Сообщений: 45
А теперь отвечу на твой пост и пост Друла из соседней ветке.
Во первых статус информации. Если статья лежит на wiki, то данная статья воспринимается лично мной, как истина в последней инстанции. Точно такая же статья лежащая на форуме уже так не воспринимается. По этому ошибки и неточности в статье на wiki могут принести вред. Простой пример, это про конфигурировании eth0. Статья по данному моменту не полная. Предположим, при инсталляции новичок указал что у него ip 192.168.0.5/24 и шлюз 192.168.0.1. Теперь он выясняет, что у него ADSL модем с IP 192.168.1.1/24, и он же шлюз. Человечек читает статью, тупо конфигурирует Eth0, и сюрприз! Инет у него не работает. Т.К. стартовавший после Eth0, BrEth0 заменит свой шлюз по умолчанию на 192.168.0.1. Таже картина и с /etc/resolv.conf. Хоть об настраивайся, а Ping ya.ru работать не будет. Правильно задать вопрос на форуме новичок уже не сможет. И появится ветка на форуме, с парой сотен сообщений, смысла в которых ноль. Пока кто-то знающий, не уточняет, какая у него платформа, и не скажет, что на wiki лежит статья не применимая к его случаю.
Опыт, а главное знание того, что даже если сделать все по ману, доке, wiki, etc, и не факт, что это заработает, приходит с опытом, а вот опыта то у новичка нет, а значит и нет подобного знания.
Так, что далеко не любая информация полезна.
И второй момент. Я полностью согласен с greyzy, что качественная документация практически отсутствует для новичка. И причин тут несколько. Начиная от того, что эту документацию пишут профи, которые подразумевают, что читатель уже знаком с базовыми понятиями, кончая, тем, что документация очень подробная и внушительных размеров, и содержит огромное число не нужной новичку информации. А выжимка из этих док, и краткий пересказ в виде "пошаговых инструкций", очень полезен. Одна беда, такие инструкции приучают новичков тупо следовать этим инструкциям, и отучает читать маны и доки. И совершенно не объясняют, что и зачем делается.

Оффлайн Мню

  • Давно тут
  • **
  • Сообщений: 45
Замечания по содержанию
1) Хм, может гугль и прав, у меня П5 стоит в виртуалке (VMware server). Может на реальной машине этого интереса и нет. Пусть меня поправят те, кто ставил П5 на реальную машину.
2) Все правильно."В поле «Имя компьютера» необходимо указать сетевое имя компьютера вида computer.domain". Тут не правильное понимание слова "domain". Да, в документации такое написание правильное, но вот в примере для новичков, нет.
5) Борьба с прыганием интерфейсов не актуально для любой платформы с последними обновлениями из сизифа, и П5 и 5.1 бранчей. Но информация о переименовании интерфейсов, актуальна именно для них.

greyzy

  • Гость
должно быть четыре папки
А у меня их четыре, повторюсь, не имею пятого альта, может там и две папки
Настройка статического ip-адреса
Вот этот пункт, я бы вообще переработал, и поднял выше.
Простейший пример: на втором из двух моих компьютеров при инсталляции я указал конфигурирование по dhcp, так вот там файлов ipv4address, ipv4route после установки ВООБЩе нет, поэтому я описываю, как мы их создаем, и чего они значат
BOOTPROTO=dhcp,staticЭто все есть в статье про etcnet, ссылка на которую дана ниже в статье, моя то заметка краткая
Чуть добавить. Если в Вашей сети есть DHCP сервер, то стоит использовать DHCP способ получения адреса.
hint! В качестве DHCP сервера может работать и ADSL модем.
Надеюсь новичок заметит топ из пяти вопросов в начале темы Вопросы новичков :)
Создайте пустой файл /etc/udev/rules.d/10-network.rules
1) Этот метод используется только на системах с последними обновлениями.
2) У меня такого файла нет. А есть 70-persistent.rules.
3) NAME="eth0" Использование имен EthX является плохой практикой. Хотя бы EthXX (eth00).
4) Прикреплять имена можно и по положению на шине. Например у меня 3 одинаковых карты. И мне удобно, что бы нижняя была для локальной сети, а верхняя для ADSL модема. А вот средняя должна быть привязана и по шине и по маку, второй провайдер привязывается к МАК адресу. Но это уже извращения.
Дополняйте, я написал как работает у меня
Если статья лежит на wiki, то данная статья воспринимается лично мной, как истина в последней инстанцииЕсли туда информацию может заносить, кто хочет, как это может быть в последней инстанции? И вообще, часто статья на вики - как вырванная страница из книги, ни названия, ни к чему это вообще, имхо

Может нам кто-нибудь скажет что-нибудь об интерфейсе brethX?

Оффлайн Мню

  • Давно тут
  • **
  • Сообщений: 45
должно быть четыре папки
А у меня их четыре, повторюсь, не имею пятого альта, может там и две папки
Ну тогда так и укажи, что информация в твоей статье не актуальна для продуктов на пятой платформе. Прямо в самой статье. Что бы новичок поставивший себя пятую платформу не наступал на мину которую ты ему подложил.

BOOTPROTO=dhcp,staticЭто все есть в статье про etcnet, ссылка на которую дана ниже в статье, моя то заметка краткая
Добавивь всего пару строк, ты сделаешь статью более полной, а значит и более удобной. Тем, кто осилил статью про etcnet, твоя статья становится не нужной. Я считал, что статья про etcnet слишком большая для новичка, и именно по этому, ты взял из нее небольшой кусок, который посчитал нужным, что бы облегчить жизнь новичкам.

Надеюсь новичок заметит топ из пяти вопросов в начале темы Вопросы новичков :)
Это сегодня тема в топе, а через неделю буква "т" заменится на "ж". И найти эту тему станет очень тяжко, и многим новичкам просто лениво бутет ее искать.


Дополняйте, я написал как работает у меня
Нет, это твоя статья. Ни дополнять, ни перерабатывать я ее не буду. У меня свой взгляд на авторство.

И используй теги quote, а не code.

Оффлайн Salomatin

  • Модератор раздела
  • ****
  • Сообщений: 981
    • Пошаговые инструкции
    • Email
Попробую по теме:

Настройка сетевой карты, краткое пособие для начинающих

Получаем от провайдера
Статический IP-адрес  - 192.168.0.48 маска 255.255.255.0
Шлюз                             - 192.168.0.1
Основной DNS    - 81.81.81.81
Дополнительный DNS — 82.82.82.82

Берем сервер с одной сетевой картой
Открываем консоль:
набираем
$su -l вводим пароль root

Шаг № 1 Удаляем директорию и рекурсивно все ее содержимое
#rm -rf /etc/net/ifaces/eth0
Создаем каталог
#mkdir /etc/net/ifaces/eth0создаем три файла
#cat >>/etc/net/ifaces/eth0/ipv4address
192.168.0.48/24
сохранить (ctrl+d)

#cat >>/etc/net/ifaces/eth0/ipv4route
default via 192.168.0.1
сохранить (ctrl+d)

#cat >>/etc/net/ifaces/eth0/options

TYPE=eth
DISABLED=no
NM_CONTROLLED=no
BOOTPROTO=static
сохранить (ctrl+d)

Шаг № 2
перезагружаем сетевую карту
#service network restart
Единственная сетевая карта настроена. Можно пинговать  провайдера.

Шаг № 3   Настраиваем DNS

Удаляем старые настройки
#rm /etc/resolv.confзаводим свои
cat >>/etc/resolv.conf
nameserver 81.81.81.81
nameserver 82.82.82.82
сохранить (ctrl+d)

запускаем специальный скрипт  resolv.all командой

/etc/chroot.d/resolv.all
DNS настроен.

Мы решили организовать локальную сеть и раздавать инет.
Как раздавать инет это другая тема. Рассмотрим как настроить вторую сетевую.  
Вставляем в сервер вторую карту (если она была установлена раньше, то eth0  и eth1 настраиваются одновременно)
Локальная сеть у нас будет 176.16.0.0/24  и наш сервер с адресом 176.16.0.1 будет для нее шлюзом

Шаг № 1 Удаляем если была директорию и рекурсивно все ее содержимое
#rm -rf /etc/net/ifaces/eth1
Создаем каталог
#mkdir /etc/net/ifaces/eth1создаем  два файла
#cat >>/etc/net/ifaces/eth1/ipv4address
176.16.0.1/24
сохранить (ctrl+d)

#cat >>/etc/net/ifaces/eth1/options
TYPE=eth
DISABLED=no
NM_CONTROLLED=no
BOOTPROTO=static
сохранить (ctrl+d)

Шаг № 2
перезагружаем сетевые карты
#service network restart
Две сетевые карты настроена. Можем пинговать еще и локальный компьютер.
Сетевые карты могут поменяться местами, тогда переключаем провода.
(как закреплять карты другая тема)

Мы решили подключить наш сервер еще и к дворовой сети, где адрес, шлюз и DNS выдается автоматически, используются адреса типа 10.0.0.* .
Интернет мы у них получать не собираемся, шлюзы и DNS нам не нужны и будут мешать. Обмениваться файлами по их сети мы хотим.
Настраиваем третью сетевую карту, да так  чтобы и не мешать работе их сети.  Для этого мы должны знать адрес их шлюза. Допустим это 10.0.0.1

Шаг № 1 Удаляем, если была, директорию и рекурсивно все ее содержимое
#rm -rf /etc/net/ifaces/eth2
Создаем каталог
#mkdir /etc/net/ifaces/eth2создаем  файлы
#cat >>/etc/net/ifaces/eth2/ipv4route
10.0.0.0/8 via 10.0.0.1
сохранить (ctrl+d)

#cat >>/etc/net/ifaces/eth2/options
BOOTPROTO=dhcp
DISABLED=no
DHCP_ARGS="-R -G"
сохранить (ctrl+d)

Пояснения:
так как у нас нет совсем сети 10.*  то запись «10.0.0.0/8 via 10.0.0.1» , будет отправлять  пакеты на их подсеть, даже если дворовая сеть будет расширятся.
Запись
Цитировать
DHCP_ARGS="-R -G"
говорит о том, что мы не будем от них получать адрес шлюза (G) и DNS (R)
и не будет путаницы у нас на сервере.

Шаг № 2
перезагружаем сетевые карты
#service network restart
У нас работает инет, локльная сеть и мы общаемся с дворовой сетью.

Сейчас все моднее подключаться к двум провайдерам, даже дома.
Что можно сделать по инструкции
http://forum.altlinux.org/index.php/topic,964.msg21960.html#msg21960
« Последнее редактирование: 05.11.2009 17:29:19 от kda »
Хочешь понять сам, объясни другому.
"Если уже все испробовал и ничего не помогает - почитай инструкцию"

kda

  • Гость
Шаг № 3   Настраиваем DNS

Удаляем старые настройки
#rm /etc/resolv.confзаводим свои
cat >>/etc/resolv.conf
nameserver 81.81.81.81
nameserver 82.82.82.82
сохранить (ctrl+d)

Только одно уточнение. Судя по этой теме, редактировать /etc/resolv.conf руками не рекомендуется. Цитирую из приведенной ссылки:

Цитировать
Как только openresolv окажется в вашей системе (например, вытянется по
зависимостям с каким-то пакетом) - надо быть осторожным в плане
редактирования /etc/resolv.conf - он просто будет *перетираться* resolvconf.

Если захочется редактировать resolv.conf вручную - используйте файл
/etc/resolvconf/resolv.conf/base.

Оффлайн Salomatin

  • Модератор раздела
  • ****
  • Сообщений: 981
    • Пошаговые инструкции
    • Email
Только одно уточнение. Судя по этой теме, редактировать /etc/resolv.conf руками не рекомендуется.

Ошибки в инструкции я не увидел.
Цитата от туда же:
"Openresolv позволяет разруливать ситуации, когда несколько интерфейсов
(например, vpn и dhcp) одновременно хотят отредактировать /etc/resolv.conf."
В нашем случае мы сами редактируем /etc/resolv.conf  и других интерфейсов, которые могут на это покушаться нет. 

Раз возможны неожиданности мне понравился рецепт, кажется от Const примерно такой:
Даем команду
#chmod u-w /etc/resolv.conf и уже никто не сможет редактировать этот файл, даже сам root, пока право на запись не восстановит.

Этот пункт в инструкции лишний, он не имеет отношение к теме буквально.
Настройки сетевых карт и DNS разные темы.

Шаг №3 написан, потому что greyzy описал это и допустил ошибку, на которую хотел обратить внимание:

/etc/resolv.conf командой service nrtwork restart  не перечитывается и после этого ничего не произойдет.
Только перегрузить компьютер или запустить специальный скрипт.

kda - можно
« Ответ #11 : Сегодня в 16:08:33 »
удалить, мне неприятно.
Спасибо.
Хочешь понять сам, объясни другому.
"Если уже все испробовал и ничего не помогает - почитай инструкцию"

greyzy

  • Гость
Похоже я Вас невольно задел за живое, чего даже в мыслях не держал. Вы делаете очень полезное дело, и вообще-то, выверенные инструкции действительно должны быть написаны в wiki и, IMHO, "лепиться" вверху раздела "Вопросы новичков", как на ru-board'e. А иначе в спешке, отложенное на потом, ищется долго и не всегда находится.

P.S. Странно, что на wiki иногда невозможно определить автора!?  :(
Да не, просто накинулись все, вот и взгрустнулось  :) А вики без авторов, пч его делают всем миром http://www.altlinux.org/ALT_Linux_Wiki:Copyright, никому не возбраняется внести туда свою лепту  ;)

Две сетевые карты настроена. Можем пинговать еще и локальный компьютер.
Сетевые карты могут поменяться местами, тогда переключаем провода.
(как закреплять карты другая тема)
Ага, я так три дня переключал, поэтому статья получилась "громоздкой"
Мы решили подключить наш сервер еще и к дворовой сети, где адрес, шлюз и DNS выдается автоматически, используются адреса типа 10.0.0.* .
Интернет мы у них получать не собираемся, шлюзы и DNS нам не нужны и будут мешать. Обмениваться файлами по их сети мы хотим.
Настраиваем третью сетевую карту, да так  чтобы и не мешать работе их сети.  Для этого мы должны знать адрес их шлюза. Допустим это 10.0.0.1

Создаем каталог
#mkdir /etc/net/ifaces/eth2создаем  файлы
#cat >>/etc/net/ifaces/eth2/ipv4route
10.0.0.0/8 via 10.0.0.1
сохранить (ctrl+d)

#cat >>/etc/net/ifaces/eth2/options
BOOTPROTO=dhcp
DISABLED=no
DHCP_ARGS="-R -G"
сохранить (ctrl+d)

Пояснения:
так как у нас нет совсем сети 10.*  то запись «10.0.0.0/8 via 10.0.0.1» , будет отправлять  пакеты на их подсеть, даже если дворовая сеть будет расширятся.
Запись
Цитировать
DHCP_ARGS="-R -G"
говорит о том, что мы не будем от них получать адрес шлюза (G) и DNS (R)
и не будет путаницы у нас на сервере.
Поподробнее о записи 10.0.0.0/8 via 10.0.0.1, почему будет отправлять, из-за маски /8 ? И насчет не мешать их сети: мы не получаем их dns и шлюз, предполагается, что в нашей сети поднят dhcp и dns, или чем мы им будем мешать?

Оффлайн Salomatin

  • Модератор раздела
  • ****
  • Сообщений: 981
    • Пошаговые инструкции
    • Email

Поподробнее о записи 10.0.0.0/8 via 10.0.0.1, почему будет отправлять, из-за маски /8 ? И насчет не мешать их сети: мы не получаем их dns и шлюз, предполагается, что в нашей сети поднят dhcp и dns, или чем мы им будем мешать?


В отношении примера "дворовой" сети:

Исходим из того, что организаторы этой сети поставили у себя DHCP-сервер и выдают IP -адреса и другие данные dhcp-клиентам.  Сейчас часто так делают, это удобно, потому что не надо бегать и перенастраивать все компьютеры.

Мы не должны мешать работать их сети. Если мы настроим сетевую карту статически, узнав у них подсеть и диапазон адресов, то  когда наш компьютер будет включатся, может оказаться так, что  IP-адрес  уже выдан кому-то и перестанет работать комп с этим адресом, да и наш не подключится.  
Можно конечно прописать на их сервере, чтобы нашему MAC выдавали один и тот же адрес, но это уже орг вопросы, которые надо ходить и решать. Потом нельзя менять сетевую. А вдруг поменяют диапазон, ну вообщем много всего.  
Мы этого можем избежать.
Наш клиент настроен так, что мы адрес получаем их, какой нам дадут и на то время аренды, которое стоит у них. В этом смысле мы становимся добропорядочными пользователями.

Но и себе мы проблем не хотим, вдруг они заведут внутренний DNS, клиент интерфейса начнет переписывать наш resolv.conf поэтому мы используем опцию (-R) не получать DHS.

А вот со шлюзом труднее, он постоянный, но ребята могут его поменять. Мы первый раз подключаемся не записав опцию (-G)  и получаем у них:
default via 10.0.0.1 dev eth1
он второй для нас и пакеты не будут знать куда идти.
Увидев адрес 10.0.0.1 мы вставляем опцию "не получать default"
делаем наши настройки и перегружаем сетевую карту.
Все работает.

И наконец:
"Поподробнее о записи 10.0.0.0/8 via 10.0.0.1"
Ребята молодые, развиваются и 254 им становится мало, они придумывают использовать подсеть  10.0.0.0/22 , а это уже 4 раза по 254. У них могут появиться еще и шлюзы. Сейчас быстро все происходит.
Нам это неинтересно. так как задав всю подсеть 10* мы будем к их адресам ходить через их шлюз всегда.
Единственная проблема, если они сменят шлюз, что бывает редко, но может быть. Тогда мы потеряв их из виду, один раз уберем опцию -G, проверим шлюз, если что подправим и опять получаем доступ к их подсети. Можем качать файлы и играть по их сети.

Этот пример у меня их жизни.  Сейчас все используют DHCP-сервера. Этот пример я привел как учебный, когда у нас несколько подключений и нам не надо получать у каждого дополнительный маршрут default. Для этого удобно использовать замечательную опцию (-G).
 
А на счет "громозский" - это только мое личное мнение, не больше. Мнение, которое может оказаться и не справедливым. Вы посчитали так. Почему нет. Может быть.

Я ведь тоже могу не очень ясно выражать свои мысли. У вас же возникли вопросы.
Хотите вместе напишем понятные для всех примеры настроек сетевых карт для работы с разными подсетями. Чтобы было все понятно с первого прочтения и не возникало никаких вопросов.
Я напишу  - вы подправите. Потом я. Может получиться внятная и полезная инструкция.
Как говорят:
Хочешь понять сам, объясни другому.
« Последнее редактирование: 07.11.2009 12:15:32 от Salomatin »
Хочешь понять сам, объясни другому.
"Если уже все испробовал и ничего не помогает - почитай инструкцию"

greyzy

  • Гость
Про статический не подумал, теперь понятно, но спросил-то я не про него, в нашем примере на нашем компьютере с тремя сетевыми поднят dhcp и dns сервер? Я думал мы будем нашим  dhcp и dns серверами им мешать, такого у меня не было, чтобы два dhcp в сети, но знаю что делать этого не стоит.

Насчет дополнения для всяких сетей боюсь не получится, много слишком вариантов... А другая сторона - чтобы их описывать, надо бы "руками потрогать", вы написали пример из жизни,  у меня хоть вопросы-то по вашей статье возникли, но из интереса, практически это проверить негде, у меня в доме нету домовой сети, и не предвидится. Но общие моменты всегда пожалуйста поправляйте, а вы кстати здесь http://forum.altlinux.org/index.php/topic,964.msg56333.html#msg56333 на это http://forum.altlinux.org/index.php/topic,4444.msg62742.html#msg62742 так и не поправили  ;)

Оффлайн Salomatin

  • Модератор раздела
  • ****
  • Сообщений: 981
    • Пошаговые инструкции
    • Email
в нашем примере на нашем компьютере с тремя сетевыми поднят dhcp и dns сервер? Я думал мы будем нашим  dhcp и dns серверами им мешать, такого у меня не было, чтобы два dhcp в сети, но знаю что делать этого не стоит.
Похоже путаются понятия сервер и клиент. В нашем примере мы настраивает клиента  DHPC-клиент. А работа одного сервера и много клиентов это нормально., хотя и сервера умеют договариваться.
кстати здесь
...
 так и не поправили  ;)
Хотел прежде проверить сам. Пока не получилось вживую потрогать своими руками.
Хочешь понять сам, объясни другому.
"Если уже все испробовал и ничего не помогает - почитай инструкцию"

greyzy

  • Гость
в нашем примере на нашем компьютере с тремя сетевыми поднят dhcp и dns сервер? Я думал мы будем нашим  dhcp и dns серверами им мешать, такого у меня не было, чтобы два dhcp в сети, но знаю что делать этого не стоит.
Похоже путаются понятия сервер и клиент. В нашем примере мы настраивает клиента  DHPC-клиент. А работа одного сервера и много клиентов это нормально., хотя и сервера умеют договариваться.
Salomatin, еще раз то, что мне не понятно из примера - на нашем компьютере с тремя сетевыми стоит НАШ dhcp? и если стоит, как он не будет мешать дворовой сети? Вдруг дворовые компы начнут получать адреса с нашего dhcp-сервера. Если наш компьютер dhcp не имеет, то вопросов больше нет