< [ на главную ]

Некоторые вопросы настройки сетевой карты
 в Альт Линукс Десктоп 4.1 (alt linux desktop 4.1)

   Данная статья прежде всего будет полезна для новичков и охватывает некоторые общие вопросы конфигурирования сетевого адаптера в ОС Альт Линукс 4.1. НЕ рассматривается графическое конфигурирование. Все манипуляции выполняются в консоли (терминале) от имени суперпользователя root #.

Как попасть в консоль: кликаем правой клавишей по рабочему столу, выбираем Запустить Терминал (либо и быстрее Ctrl+T), потом идем Сеанс-Новая консоль с правами root-вводим пароль root'а. Текст, набранный белыми буквами на черном фоне — набранная команда в терминале и/или ее вывод. Текст, набранный, белыми буквами на синем фоне — окно редактирования в программе Midnight Commander (вы можете использовать любой другой редактор, который вам предпочтительнее). Попасть в программу Midnight Commander вы можете набрав в окне терминала

# mc


           1. Общие сведения о сетевых настройках

         1.1 Выясним имя компьютера

# hostname
alt777.altdomain.local

Изменение имени компьютера (если есть такая потребность разумеется)

# hostname новое_имя

Примечание: Эта команда изменит имя компьютера до первой перезагрузки. Чтобы изменить имя компьютера окончательно, откройте файл по адресу /etc/sysconfig/network и найдите там строку HOSTNAME, измените имя компьютера на новое

# mcedit /etc/sysconfig/network
HOSTNAME=новое_имя.altdomain.local

Жмем F2 (сохранить? yes), перезагружаемся.

Примечание: Если ваш компьютер будет участником сети, стоит еще на этапе инсталляции задать имя в виде хост.домен.local, а не хост.домен.
 
          1.2 Какие сетевые карты в системе


Теперь выясним, есть ли вообще у нас сетевые в компьютере, введем команду

# 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)

           1.3 Вывод информации о сетевом интерфейсе

Узнаем собственно сетевой адрес нашего компьютера, воспользуемся командой 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, и изучите, то даже сможете кое-что в этих характеристиках изменить.

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

         2. Конфигурирование сетевого интерфейса


Будем исходить из того, что при установке системы вы выбрали «получать адрес автоматически», т.е. по dhcp, в этом случае, если ваш dhcp-сервер нормально функционирует, то вся ваша сетевая карта сконфигурирована. Заметьте, если к вашей сетевой карте подсоединен ADSL-модем, он может иметь на своем борту встроенный dhcp-сервер, и ваш компьютер может получить настройки сети оттуда, в этом случае вам также вряд ли стоит изменять настройки вашего адаптера. Но представим, что теперь вам все-таки нужно настроить вашу сетевую карту на статический адрес.

Отключим пока нашу сетевую карту

# ip link set eth0 down

Настройки сети в альт линукс десктоп 4.1 находятся в папке /etc/net/ifaces, там, если у вас одна сетевая карта, должно быть четыре папки

/default
/eth0
/local
/unknown

Нас интересует папка eth0 (там находятся файлы настройки нашей сетевой карты с именем интерфейса eth0), в которой будет лежать один файл options, откроем его для редактирования

# mcedit /etc/net/ifaces/eth0/options

Откроется файл и в общем случае мы увидим строки

TYPE=eth
DISABLED=no
NM_CONTROLLED=no
BOOTPROTO=dhcp

Меняем в последней строке на BOOTPROTO=static

TYPE=eth
DISABLED=no
NM_CONTROLLED=no
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/маску (/24 это 255.255.255.0)

# 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


Включаем интерфейс

# ip link set eth0 up

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

# service network restart

Также сеть можно перезапустить командой

# /etc/init.d/network restart

Плюс к restart есть команды stop и start, которые соответственно гасят всю сеть и включают ее.

Файл с описанием dns-сервера /etc/resolv.conf у вас по идее должен быть, но если нет, то создадим его и запишем наш, а точнее ваш, dns-сервер (например 192.168.0.9)

# echo -n>/etc/resolv.conf
# echo nameserver 192.168.0.9>/etc/resolv.conf
/etc/chroot.d/resolv.all

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

Также вы можете изменить 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

внося новые значения и делая затем service network restart

      3. Дополнения

         3.1 Переименование имени сетевого интерфейса

Если вы решите дать более информативное название, чем eth0 вашей сетевой (а в некоторых случаях это даже необходимо) вам нужно выполнить следующие действия, отключаем ненужную сетевую:

# ip link set eth0 down

Меняем имя

# ip link set eth0 name local

Теперь нам нужно сменить название папки с настройками бывшей eth0 на новое название

# mv /etc/net/ifaces/eth1 /etc/net/ifaces/local

Перезапускаем сеть.



          3.2 Закрепеление порядка загрузки сетевых карт

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

Для жесткого закрепления порядка загрузки наших сетевых карт используем 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="prov"
SUBSYSTEM=="net", ATTRS{address}=="00:14:d1:13:8b:96", NAME="local"

где ATTRS{address} это mac-адрес вашей сетевой, для его получения для каждой сетевой наберите

# udevadm info -a -p /sys/class/net/имя_интерфейса | grep address

Обратите внимание на регистр - мас-адрес пишем маленькими буквами.

Сохраняемся, таким образом первым всегда будет грузиться первая карта в списке и получать нужное имя, в данном случае prov.


 greyzy 09.11.2009
< [ на главную ]




Hosted by uCoz