Новые информационные технологии и программное обеспечение
  RSS    

20231229 200x300 0d249f2d3676e05c1a28a375dff09c2a



Работа с сетью в Linux

Linux изначально создавался для работы с сетью, поэтому, работа с сетью -- это одна из сильных сторон Linux.

Linux поддерживает популярные сетевые протоколы, такие как TCP/IP и SMB (NetBIOS), обладает усовершенствованными инструментами для мониторинга и фильтрации сетевого трафика. В Linux доступны такие службы как FTP, web-сервер, Windows файл- и принтсервер. Linux даже предоставляет возможность централизованного управления службами, Virtual Private Networking (VPN) и удаленного вызова процедур.

Linux может работать с любым сетевым оборудованием, для которого у него есть драйвер. Драйвера Linux либо встраиваются в ядро, либо компилируются как загружаемые модули. Многие распространенные сетевые карты по умолчанию поддерживаются ядром Linux. При выборе сетевого оборудования стоит использовать устройства, перечисленные в списке совместимых устройств "Hardware Compatibility List". Используйте самые последние версии дистрибутивов Linux.

Как правило, если вы используете совместимое сетевое оборудование, ваша карта будет автоматически распознана при инсталляции системы. Вы можете проверить сетевое оборудование, обнаруженное системой, используя команду ifconfig. По умолчанию ifconfig демонстрирует вам активные сетевые устройства. Для того чтобы увидеть все сетевые устройства, добавьте ключ -a:

[root@cmw-t30 root]# ifconfig -a
eth0 Link encap:Ethernet HWaddr 00:09:6B:60:8B:1E
inet addr:9.41.209.160 Bcast:9.41.209.255 Mask:255.255.255.0
UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1
RX packets:47255 errors:0 dropped:0 overruns:0 frame:0
TX packets:32949 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:100
RX bytes:22140365 (21.1 Mb) TX bytes:13519623 (12.8 Mb)
Interrupt:11 Base address:0xf000
lo Link encap:Local Loopback
inet addr:127.0.0.1 Mask:255.0.0.0
UP LOOPBACK RUNNING MTU:16436 Metric:1
RX packets:1308081 errors:0 dropped:0 overruns:0 frame:0
TX packets:1308081 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:0
RX bytes:183376967 (174.8 Mb) TX bytes:183376967 (174.8 Mb)

В выше приведенном примере в системе есть только одна сетевая карта, идентифицированная как eth0. Адаптер lo -- это loopback (адаптер обратной связи), используемый системой для обращения к самой себе.

В процессе конфигурации сетевым устройствам Linux присваиваются имена, состоящие из наглядной аббревиатуры и номера. Первое устройство данного типа имеет номер 0, остальные нумеруются 1, 2, 3 и т.д.

Самые распространенные: 

  • eth0, eth1 ...
    Это интерфейсы Ethernet-карт. Используются для большинства Ethernet-карт, включая многие Ethernet-карты, подключаемые через параллельный порт.
  • tr0, tr1 ...
    Это интерфейсы карт Token Ring. Используются для большинства карт Token Ring, включая карты, произведенные не компанией IBM.
  • s10, s11 ...
    Это SLIP интерфейсы. SLIP интерфейсы связаны с последовательными портами в том порядке, в котором они назначаются для SLIP.
  • ppp0, ppp1 ...
    Это PPP интерфейсы. Подобно SLIP интерфейсам, PPP интерфейс связывается с последовательным портом, как только он переходит в PPP-режим.
  • plip0. plip1 ...
    Это PLIP интерфейсы. PLIP передает IP датаграммы через параллельные порты. Интерфейсы распределяются драйвером PLIP при загрузке системы и связываются с параллельными портами. В ядрах версий 2.0x существует прямая связь между именем устройства и портом ввода-вывода параллельного порта, а в ядрах более поздних версий имена устройств назначаются последовательно точно так же, как для SLIP и PPP устройств.
  • ax0, ax1 ...
    Это AX.25 интерфейсы. AX.25 -- основной протокол, используемый для любительской радиосвязи. AX.25 интерфейсы распределяются и отображаются аналогично интерфейсам SLIP.

Настройка сети

Настройка сети производится в процессе инсталляции вашего дистрибутива Linux. В исходной конфигурации у вас уже, вероятно, будет активное устройство eth0. в процессе работы вы сможете перенастроить его.

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

Средства мониторинга

В Linux предусмотрено множество средств мониторинга сетевых задач.

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

ifconfig eth0 192.168.13.13 netmask 255.255.255.0 up

Команда выше задает для eth0 адрес 192.168.13.13 в сети класса C и активирует устройство, если оно было отключено.

ipconfig eth0 down

Команда выше отключает устройство eth0. Полное описание команды ifconfig вы можете найти на странице info ifconfig.

ifup/ifdown
Команды ifup и ifdown служат для того, чтобы активировать и дезактивировать сетевые устройства, используя их сохраненные настройки.

# Активирует eth0 используя сохраненные настройки
ifup eth0
# Отключает eth0
ifdown eth0

netstat
Консольная команда netstat используется для вывода сетевых подключений, таблиц маршрутизации, статистики интерфейсов, маскарадинга и вхождения в multicast. Для управления командой netstat служат несколько ключей командной строки.

Чаще всего я использую команду netstat, чтобы увидеть соединения, которые находятся в состоянии LISTEN или ESTABLISHED. LISTEN означает, что в вашей системе есть службы, которые ожидают соединения от других машин. ESTABLISHED -- это активное соединение между вашей и другими машинами. Убедитесь, что вы знаете все работающие программы, использующие соединение LISTEN. Если вы видите что-то неизвестное, это может быть небезопасным явлением. netstat обладает большим количеством опций. Для получения подробной информации наберите в командной строке info netstat.

route
С помощью консольной команды route можно вывести на экран таблицу маршрутизации IP и оперировать с ней.

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

route add default gw 10.10.10.1

Приведенная выше команда добавляет маршрут по умолчанию (маршрут, который будет использован, если все другие указанные маршруты не подходят). Все пакеты, использующие маршрут по умолчанию, будут направлены через шлюз "10.10.10.1". Устройство, которое будет фактически использоваться для этого маршрута, зависит от того, как мы можем достичь "10.10.10.1" - поэтому статический маршрут "10.10.10.1" должен быть настроен прежде всего.

route add -net 192.56.76.0 netmask 255.255.255.0 dev eth0

Приведенная выше команда добавляет маршрут к сети 192.56.76.x через устройство "eth0." В данном случае модификатор маски сети класса C не обязателен, так как адреса 192.* принадлежат сетям класса C. В этой команде "dev" может быть пропущено.

Полную информацию об опциях route можно получить, набрав info route.

Выводы

Linux с самого начала предназначался для работы с сетью. В него встроены сложные функции, которые раньше можно было найти только в высокотехнологичных системах, внедряемых в корпорациях. Тем не менее, несмотря на всю свою мощь, конфигурация сети в Linux не сложнее, чем в Windows. Такие инструменты, как Webmin, redhat-config-network и YAST предоставляют возможность конфигурации сети в графическом режиме. Средства ifconfig и route позволяют визуализировать и модифицировать сетевые параметры с помощью консоли или скрипта. С помощью netstat можно просмотреть отдельные сетевые подключения и их взаимодействие с запущенными процессами.

Поделиться:

 

 

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

Комментарии  

 
+1 # Guest 20.04.2012 09:44
:
Ответить
 
 
+1 # Guest 20.04.2012 09:46
как же все сложно... :o
Ответить
 
 
0 # Guest 20.04.2012 22:55
Да, на windows мало похоже :)
Ответить
 
 
0 # Guest 20.04.2012 22:57
не хватает еще

# sudo ettool -s et0 speed 00 duplex full autoneg off# - Принудительно задать скорость сетевому интейсу 00Mbit и режим Full Duplex и отключить автоматическое определение

# sudo ettool -s et0 speed 0 duplex alf autoneg off# - Принудительно задать скорость сетевому интейсу 0Mbit и режим alf Duplex и отключить автоматическое определение
Ответить
 
 
0 # Guest 20.04.2012 22:58
смена мак адреса в linux

Чтобы временно поменять MAC-адрес сетевой карты et0 нужно воспользоваться командой:
# sudo ifconfig et0 w eter 00:0:0:0:0:0
Последнее число - это новый MAC-адрес.
Для смена MAC-адреса навсегда нужно в конфигурационном файле etworkinterfaces к настройкам сетевого интейса добавить строку с новым MAC-адресом:
auto et0
iface et0 dcp
pre-up ifconfig et0 w eter 00:0:0:0:0:0
Ответить
 
 
0 # improovizator 03.09.2012 21:40
Классная статья, спасибо!
Ответить
 

Добавить комментарий


 

Самое читаемое:

Быстрый поиск

Инструкции к программам

Инструкции к программам

Сайт "Новые Информационные Технологии" содержит лишь справочные данные из открытых источников. Мы НЕ Рекламируем и НЕ Рекомендуем покупать или использовать ВСЕ упомянутые на сайте программы, оборудование и технологии