Ifconfig не видит сетевую карту

Обновлено: 04.07.2024

У меня проблемы с подключением компьютера с Ubuntu 10.04 (Sony Vaio VGN-SR490) к Интернету через кабель Ethernet, подключенный непосредственно к маршрутизатору.

Я могу подключиться к Интернету с помощью того же кабеля с помощью компьютера с Windows, поэтому что-то не так с настройкой Linux.

Как мне понять, в чем проблема и решить ее?

Вот мои настройки сети в Linux:

Вот мои настройки сети в Windows (Vista):

Я подверг цензуре свой IP-адрес из этих результатов. Если эта информация нужна, просто дайте мне знать.

Вот содержание /etc/network/interfaces :

После добавления auto eth0 вот последние результаты:

Вот результаты запуска modprobe:

Я удалил Linux с моего компьютера и установил Windows XP по просьбе некоторых людей, комментирующих этот вопрос. Я установил и запустил программу, чтобы узнать подробности о сетевой карте. Вот эта информация:

Похоже, список сетевых адаптеров пуст. Теперь я установлю двойную загрузку Windows XP и Ubuntu Linux. Я до сих пор не могу получить доступ к Интернету, даже через Windows. Интересно, это может быть аппаратная проблема с компьютером или проблема с самим роутером. Другие компьютеры могут подключаться к этому же маршрутизатору и нормально работать. (Вот так я и публикую это!)

Спасибо, что остались со мной. Я постарался немного укоротить ваш пост, чтобы нам было понятнее (вы также можете удалить несколько комментариев, если хотите). Похоже, что ваша ошибка очень распространена в Ubuntu и VMware. Вы на самом деле работаете Ubuntu себя в качестве виртуальной машины? Или на компьютере установлена ​​Ubuntu? Поисковый запрос SIOCSIFADDR в Интернете: ни одно такое устройство не вызывает никаких проблем , но, похоже, оно связано с Ubuntu как виртуальной машиной. Не могли бы вы опубликовать результаты dmesg | grep eth, а также посмотрите, перечислены ли какие-либо сетевые интерфейсы с помощью lspci @slhck Нет, Ubuntu не работает как виртуальная машина. Я установил Ubuntu в качестве операционной системы на моем компьютере. VMware установлен, но в данный момент не работает. Интересно, что я только что загрузил свой компьютер с Ubuntu LiveCD, и у меня точно такая же проблема, даже после того, как вы следовали инструкциям на LiveCD. Я начинаю сильно подозревать, что это аппаратная проблема. @ Linker3000 Результаты запуска dmesg | grep eth были пустыми, и я не вижу никаких сетевых интерфейсов, перечисленных с использованием lspci Можете ли вы опубликовать mke / модель машины или, если это DIY, производитель и модель материнской платы ИЛИ если вы можете загрузить Windows, посмотрите, какой сетевой интерфейс указан в диспетчере устройств

Прежде всего, ваш Ethernet не управляется Ubuntu. Попробуйте ifconfig -a вместо просто ifconfig , чтобы вы могли видеть все ваши сетевые устройства, управляемые или нет. Если вы делаете см ethX в ifconfig -a списке, то решение должно быть простым, и вы , казалось, получили половину. Следующее должно войти в ваш /etc/network/interfaces файл:

Первая строка «активирует» управление интерфейсом, а вторая строка устанавливает для него DHCP и IP.

Однако, если вы даже не видите никаких интерфейсов ethX ifconfig -a , это проблема с драйверами (Ubuntu даже не видит интерфейс). Чтобы решить эту проблему, либо проверить из диспетчера устройств Windows' для PCI Vendor ID и Device ID вашей сетевой карты, которую вы можете Перекрестная ссылка здесь и посмотреть , если вы можете найти драйвер для этого (Vendor ID является производителем, Device ID это точная модель сетевой карты). Альтернативный способ in-linux сделать это через lspci .

В Windows 7 получение идентификаторов поставщиков / устройств осуществляется через диспетчер устройств - откройте узел «Сетевые интерфейсы», дважды щелкните свою сетевую карту, нажмите «Сведения» и выберите «Идентификаторы оборудования» в раскрывающемся списке. Идентификатор поставщика - это 4 шестнадцатеричные цифры после VEN_ префикса, а идентификатор устройства - это 4 шестнадцатеричные цифры после &DEV_ сразу после поставщика.

Вобще у меня роутер, по DHCP все для всех настраивающий.
В винде/маке все автоматом выдает.

по ifconfig не определяется сетвуха. ( realtek 8139 ).. В нете нашел дрова под линух.. только 2 файла 8139.vol и SETUP
как их поставить не понимаю.

Какие есть варианты решения проблемы?

Изображение пользователя dm.

Для нормального включения сетевой в линуксе, попробуй в винде в диспетчере устройств в свойствах сетевой карты Wake-on-lan after shutdown установить во включено.

Wake-on-lan after shutdown - Эту поцию как-либо без винды включить реально?
обновлися блин с 8.4 на 8.10, сломалось то, чего уж никак не ожидал - сеть.

Пробовал и вручную настраивать, и dhcp - результат нулевой.
на все пакеты выдает : дистанейшн хост анричбл, от имени мой-же тачки, что говорит о том, что пакеты даже не пытаются уходить.
Если кому удалось побежить эту багу - отзовитесь. не откатываться же с диска на 8.04 в самом деле.

Wake-on-lan after shutdown - Эту поцию как-либо без винды включить реально
Если это точна, та проблемма (она обычно после винды бывает), то решение ниже, в т.ч. без винды.

Edit: Problem with dual-booting with Windows exist also in 2.6.19.5 and 2.6.20.8 kernel, so it is safe to assume that it will concern all 2.6 kernels until the kernel developers update the drivers for RTL8168 to the version that will be able to turn on the NIC from disabled state. (Corey)

Решение: Проблема множества операционок на компьютере с Windows существуют также в 2.6.19.5 и 2.6.20.8 версии ядра, и можно с уверенностью сказать, что это будет касаться всех 2.6*-х версий ядра до тех пор, пока команда разработчиков ядра не обновить драйверы для чипа RTL8168, до версии, которая будет иметь возможность переключить NIC (сетевой адптер) из выключеного состояния.

Second edit: Powering off and unplugging the machine for a few seconds (around 10 usually does it) seems to reset the card, so it will work in Linux again until you boot Windows again.

Второй вариант решения: Выключите питание и отключите все кабели от машины (прим. понимаю - питание и лок.сеть) на несколько секунд (примерно на 10, как правило, этого хватает), чтобы сбросить настройки карты, так чтобы она снова работала в Линукс, до следующей загрузки ВиндаКапца вновь.

У кого нет винды, вариант с отключение кабеля помогает ?

wake_on_lan_after_shutdown.JPG

Благо оказался рядом с виндой и в такой же ситуации, вот вам скриншот дорогие кубунтовцы:

Само это окно, вызвать так: диспетчер устройств, потом правой кнопкой по сетевой карте (устройству) и выберите вкладку дополнительно.

Да, действительно заработало. Чтобы работало, эта функция должна стоять как Enable, как у меня на картинке, потом ОК, перегружаемся. С кабелем так и не понял, помогает или нет.

*обновил и оптимизировал несколько тему, у кого в трекере выскочила - прошу извинить.*

Странно. У меня в свойствах карточки (вкладка "Дополнительно" есть только 3 пункта:
- Размер буферов приема
- Сетевой адрес
- Скорость линии и режим дуплекса

Сетевушка: Realtek RTL 8139

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

31 авг 2017, 06:21

Система не видит cетевую ethernet-карту. Хотя раньше было все нормально. Пробовал запуститься с live-образа - ситуация аналогичная. В БИОСе ничего не трогал. Куда стоит копать?

$ ifconfig
lo Link encap:Локальная петля (Loopback)
inet addr:127.0.0.1 Mask:255.0.0.0
inet6 addr: ::1/128 Scope:Host
UP LOOPBACK RUNNING MTU:65536 Metric:1
RX packets:293 errors:0 dropped:0 overruns:0 frame:0
TX packets:293 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:1
RX bytes:24468 (24.4 KB) TX bytes:24468 (24.4 KB)

wlp2s0 Link encap:Ethernet HWaddr 00:22:68:8f:21:5a
inet addr:192.168.1.180 Bcast:192.168.1.255 Mask:255.255.255.0
inet6 addr: fdc0:3298:2596::7c9/128 Scope:Общий
inet6 addr: fdc0:3298:2596:0:d516:569b:8b82:a9aa/64 Scope:Общий
inet6 addr: fe80::d83d:b9f0:d104:81b2/64 Scope:Link
UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1
RX packets:1565 errors:0 dropped:0 overruns:0 frame:0
TX packets:1595 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:1000
RX bytes:1099371 (1.0 MB) TX bytes:270816 (270.8 KB)

$ lshw -C network
ПРЕДУПРЕЖДЕНИЕ: эту программу нужно запускать от имени суперпользователя.
*-network
описание: Беспроводной интерфейс
продукт: AR9285 Wireless Network Adapter (PCI-Express)
производитель: Qualcomm Atheros
физический ID: 0
сведения о шине: pci@0000:02:00.0
логическое имя: wlp2s0
версия: 01
серийный №: 00:22:68:8f:21:5a
разрядность: 64 bits
частота: 33MHz
возможности: bus_master cap_list ethernet physical wireless
конфигурация: broadcast=yes driver=ath9k driverversion=4.8.0-53-generic firmware=N/A ip=192.168.1.180 latency=0 link=yes multicast=yes wireless=IEEE 802.11
ресурсы: IRQ:16 память:93500000-9350ffff
*-network ВЫКЛЮЧЕНО
описание: Ethernet interface
продукт: RTL8101/2/6E PCI Express Fast/Gigabit Ethernet controller
производитель: Realtek Semiconductor Co., Ltd.
физический ID: 0
сведения о шине: pci@0000:03:00.0
логическое имя: enp3s0
версия: 02
размер: 10Mbit/s
capacity: 100Mbit/s
разрядность: 64 bits
частота: 33MHz
возможности: bus_master cap_list rom ethernet physical tp mii 10bt 10bt-fd 100bt 100bt-fd autonegotiation
конфигурация: autonegotiation=on broadcast=yes driver=r8169 driverversion=2.3LK-NAPI duplex=half latency=0 link=no multicast=yes port=MII speed=10Mbit/s
ресурсы: IRQ:26 ioport:2000(размер=256) память:91410000-91410fff память:91400000-9140ffff память:92500000-9250ffff
ПРЕДУПРЕЖДЕНИЕ: выходная информация может быть неполной или неточной. Следует запустить эту программу от имени суперпользователя.

Настройка локальной сети вручную в Ubuntu

Уникальность ему предоставляет IP-адрес. IP-адрес — это последовательность единиц и нолей, равная 32 знакам (1100100111. ) — страшно и непонятно :).

Для наглядности и удобства эту последовательность разбили на 4 равные части и перевели в десятичную систему исчисления.

То есть максимально возможная группа цифр — это 255.255.255.255.

Маска подсети:

Что такое маска подсети? А это часть ip-адреса. IP-адрес поделили на две неравные части. Первые 24 знака (бита) — маска, а остальные 8 — адрес хоста в подсети.

Маска подсети нужна для определения того, является ли компьютер которому отправляется пакет, компьютером той же подсети, что и наш. Если маска у нас одна, тогда шлем напрямки к компу-получателю, если же нет, то шлем пакет шлюзу (шлюз — это комп, маршрутизатор или программа для сопряжения компьютерных сетей, использующих разные протоколы).

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

Что за информация записана в пакете, по которой хосты определяют принадлежность пакета получателю?

Записаны
MAC-адрес получателя и ip-адрес получателя. MAC-адрес вещь уникальная, в пределах земного шара :).

При тривиальных условиях, то есть когда компьютеры в одной подсети, записывается MAC-адрес получателя и ip-адрес получателя, а когда пакет шлем через шлюз, то в пакете указывается MAC-адрес шлюза (его мы узнаем из ip-адреса шлюза с помощью ARP-запроса) и ip-адрес компьютера-получателя.

DNS-сервер — это компьютер, который знают всё про всех :). Это глобальное определение.

На деле, всё примерно так: есть DNS-серверы национальные (российский, украинский, белорусский, немецкий, . ), под ними DNS-серверы региональные (калининградская область, ленинградская область и т.д.), под региональными — местные DNS-серверы. Национальные серверы знают друг о друге и о серверах которые ниже, региональные знают о серверах которые выше и ниже них. В общем железа хватает, для того, чтобы определить что кому переслать.

Если же DNS-сервер не отвечает, то мы отправляем запрос второму DNS-серверу.

Если у вас не работает интернет, проверьте, может быть не прописаны или прописаны но неправильно DNS-серверы.

IP-адреса есть уникальные (белые, реальные, внешние) и неуникальные (серые, внутренние).

Адреса, относящиеся к подсетям, представленным ниже, не используются в интернете в качестве реальных адресов.

  • 10.0.0.0 — 10.255.255.255 (одна сеть класса A)
  • 172.16.0.0 — 172.31.255.255 (шестнадцать сетей класса B)
  • 192.168.0.0 — 192.168.255.255 (256 сетей класса C)

Это «серые», «внутренние» адреса. Они используются в локальных компьютерных сетях, которые если и имеют выход в интернет, то только через шлюз, у которого есть внешний ip-адрес. Если у этого шлюза вторая сеть — интернет, и адрес внешний, то необходимо настроить на нем технологию транслирования сетевых адресов (network address translation, NAT). Это делается для того, чтобы сетевые пакеты из локальной сети, прошедшие через него в интернет, не имели серого адреса-отправителя, т.к. в этом случае сервер, для которого предназначен пакет, не поймет, кому именно из миллионов локальных сетей возвращать ответный пакет. При использовании NAT, шлюз меняет адрес отправителя на свой внешний адрес, а у себя записывает, что «ответные пакеты с этого сервера перенаправлять такому-то компьютеру. ».

В этом случае используется SNAT (source network address translation).

Если же нам необходимо изменять адрес получателя (например, в нашей локальной сети есть сервер терминалов с серым адресом, а мы бы хотели иметь к нему доступ из интернета), то можно использовать на нашем шлюзе DNAT (destination network address translation) — «проброс портов».

То есть мы указываем в правилах файервола, что пакеты, предназначенные нам и пришедшие на порт 3160, перенаправлять на внутренний серый адрес сервера терминалов.

Определение состояния сетевых устройств и средств.

Если рассматривать самое простое соединение, т.е. компьютер в локальной сети и получает настройки автоматически, то необходимо выполнить команду:

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

sudo dhclient eth0

(команду dhclient надо запускать с правами суперпользователя).

Команда ifconfig (без параметров), отображает информацию только об активных сетевых интерфейсах.

Просмотреть информацию по всем интерфейсам можно командой ifconfig -a, выбрать необходимый из них (eth0, или eth1, или eth0:1) и работать с ним.


В Ubuntu имена сетевых устройств имеют вид ethN, где N — число, означающее номер устройства связи в системе.

Нумерация устройств начинается с нуля. Если в компьютере две сетевых карты, то они будут с идентификаторами eth0 и eth1. Если в сетевую карту ethN вставлен сетевой провод, идущий в модем, роутер или свитч, будет написано «RUNNING», на первом рисунке это видно.

Интерфейс eth0 — это карта Ethernet, к которой можно подключить сетевой кабель. В текущий момент сетевой кабель подключен, поэтому интерфейс активен, и для него отображаются ip-адрес, широковещательный адрес и маска подсети:


Интерфейс eth0 — карта Ethernet. Сетевой кабель подлючен, интерфейс активен, присвоен ip(192.168.1.254) и маска подсети(255.255.255.0):


Интерфейс lo — интерфейс обратной петли и позволяет компьютеру обращатся к самому себе. Интерфейс имеет ip-адрес 127.0.0.1 и необходим для нормальной работы системы:


Команда ifconfig -a удобна в тех случаях, когда надо быстро выяснить состояние интерфейсов, в частности, если необходимо узнать их ip-адреса. Помимо сведений о конфигурации сетевых интерфейсов команда выдает еще много полезной информации, например, количество отправленных и полученных пакетов (параметры RX и TX).

Настройка сетевого интерфейса при помощи ifconfig

Команда ifconfig позволяет конфигурировать сетевой интерфейс по вашему усмотрению и предлагает широкие возможности для этого.

Чтобы получить подробную информацию по команде, пишем в терминале:
man ifconfig

Если компьютер со статическим ip-адресом и не имеет доступа ни к другим сетям ни к интернету, то команда настройки сетевого интерфейса будет такой:

sudo ifconfig eth0 192.168.1.2 netmask 255.255.255.0 up

eth0 — идентификатор сетевого оборудования (сетевая карта).

192.168.1.2 — присваеваемый ip-адрес.

netmask 255.255.255.0 — присваеваемая маска подсети.

up — поднять интерфейс (то есть применить изменения, начать работу сетевой карте).

down — остановить интерфейс.

Команда: sudo ifconfig eth0 down Т.е. остановить работу сетевой карты с eth0 идентификатором.

Сначала выясняем наш старый mac-адрес, выполняем команду ifconfig без параметров.

Допустим он у нас такой: 00:00:00:00:00:01.

Производим следующие действия, то есть выполняем последовательность команд:

1) Отключаем интерфейс: ifconfig eth0 down

2) Изменяем MAC: ifconfig eth0 hw ether 00:00:00:00:00:01

3) Включаем интерфейс: ifconfig eth0 up

Все действия можно выполнить одной командой:

sudo ifconfig eth0 down && ifconfig eth0 hw ether 00:00:00:00:00:01 up

&& — означает, выполнить следующую команду при успешном выполнении предыдущей команды.

Как я писал выше, все эти настройки действительны лишь до перезагрузки системы. Сделаем их постоянными следующим образом:

Редактируем файл /etc/network/interfaces

Теперь приступим к редактированю файла настройки сетевых интерфейсов. Вот эти настройки и будут долговременными :), пока мы их не поменяем в файле снова.

Набираем команду ifconfig -a Видим список всех (активных и неактивных) сетевых устройств, которые именуются как eth0, eth1, eth2 и т.д.


На скриншоте вы видите три устройства:

еth0 — первая сетевая карта.

lo — локальная петля.

Локальная сеть подключена к сетевой карте eth0.

Почти вся информация о настройках сети и методах ее активации, хранится в файле /etc/network/interfaces, именно с ним мы и будем работать, используя редактор.

sudo gedit /etc/network/interfaces

auto lo — говорит о том, что интерфейс lo поднимается автоматически при загрузке системы.

Добавьте в файл строки:

auto eth0 iface eth0 inet static address 192.168.1.254 netmask 255.255.255.0 gateway 192.168.1.1

auto eth0 — сетевая карта eth0 поднимается автоматически во время загрузки системы.

iface eth0 inet static — указывает, что интерфейс (iface) сетевой карты (eth0) находится в диапазоне адресов ipv4 (inet) со статическим ip (static).

address 192.168.1.254 — статический ip адрес, тут пишем свой ip-адрес.

netmask — стандартная маска сети.

gateway — ip-адрес основного шлюза.

Редактирование закончено. Сохраняем и закрываем файл.

Запросите у вашего провайдера услуг Интернет (Internet Service Provider, ISP) адреса основного и вспомогательного серверов DNS и опишите их в файле /etc/resolv.conf.
На примере я укажу адрес DNS-сервер своего провайдера, вы должны ввести свои данные.
Откройте файл для редактирования:

sudo gedit /etc/resolv.conf

Вставьте свои данные:

nameserver 192.168.1.1 nameserver 172.16.0.1

Сохраните и закройте файл.

Для настройки DHCP и получения сетевых параметров автоматически, нужно добавить две строчки (пусть у меня так поднимется карта eth1).

sudo gedit /etc/network/interfaces

Вставьте строчки следующего содержания:

auto eth1 iface eth1 inet dhcp

Ваш файл будет выглядеть так:

auto lo iface lo inet loopback auto eth0 iface eth0 inet static address 192.168.1.254 netmask 255.255.255.0 gateway 192.168.1.1 auto eth1 iface eth0 inet dhcp

Если по каким-либо причинам вы хотите чтобы при загрузке у сетевой карты eth0 был другой mac-адрес, для этого нужно дописать строчку hwaddress ether 00:00:00:00:00:01:

auto eth0 iface eth0 inet static address 192.168.1.254 netmask 255.255.255.0 gateway 192.168.1.1 hwaddress ether 00:00:00:00:00:01

Несколько IP-адресов на одной сетевой карте

На одной сетевой карте может быть несколько ip-адресов, это бывает необходимо, если в коммутатор идут два провода от разных сетей и один от компьютера. В этом случае можно настроить на компьютере адреса обоих сетей без использования дополнительной сетевой карты. Для этого необходимо идентифицировать так называемый алиас (alias) к определенному сетевому интерфейсу, и выглядеть это будет так: сетевой_интерфейс:1 или сетевой_интерфейс:2, т.е. eth0:1 или eth1:2. Идентифицировать его можно следующим образом:

ifconfig eth0:1 192.168.0.5 netmask 255.255.255.0 up

Интересно то, что можно настроить основной интерфейс через dhcp (автоматически) dhclient eth0, а алиас eth0:1 в статику, чего я в альтернативных операционных системах не нашел.

Читайте также: