Как вы создаете новую сеть Eth?

16

У меня есть машина с eth0 и eth1, и теперь я хочу создать eth2 и назначить ему некоторый IP-адрес.

Какая команда для этого?

sivabudh
источник
1
Основываясь на вашем описании, я считаю, что этот ответ лучше http://stackoverflow.com/questions/2082722/how-do-i-create-virtual-ethernet-devices-in-linux
подойдет

Ответы:

17

На машинах Linux eth0 и eth1 соответствуют реальным сетевым портам. Чтобы добавить eth2 , вам нужно добавить еще одну NIC, либо добавив внутреннюю сетевую карту PCI (e), либо добавив сетевой адаптер USB. См. Настройка сетевого интерфейса Redhat .

Если вам нужен только другой IP-адрес, вы можете создать псевдоним Ethernet на одном из существующих адаптеров. Псевдоним похож на виртуальную сетевую карту - он позволяет назначить другой IP-адрес существующему порту. Давайте предположим, что ваш eth0 имеет IP-адрес 192.168.1.5.

Чтобы сделать это один раз, запустите (как root) ifconfig eth0:0 192.168.1.6 up. (Используйте eth0:1для второго псевдонима eth0, eth0:2для третьего или eth1:0псевдонима eth1 вместо eth0.) Эта конфигурация будет потеряна при перезагрузке.

Чтобы настроить его постоянно, добавьте его в скрипт конфигурации. Сделайте копию /etc/sysconfig/network-scripts/ifcfg-eth0файла ifcfg-eth0:0в том же каталоге. Измените новый файл, чтобы он выглядел так:

DEVICE=eth0:0
IPADDR=192.168.1.6
NETMASK=255.255.255.0
NETWORK=192.168.1.0
ONBOOT=yes
NAME=eth0:0

Удалите или закомментируйте все строки GATEWAY в обоих файлах и добавьте строку GATEWAY в ваш /etc/sysconfig/networkфайл. Затем вы можете запустить новый псевдоним ifup eth0:0или полностью перезапустить сеть service network restart.

шарлатан
источник
1
Добавление NM_CONTROLLED="no"может помочь тоже (rhel6)
sje397
@ sje397 Спасибо, мой не работал, пока не добавил эту строку.
квадратные заголовки
4

Следуй этим шагам:

  1. Выключи компьютер
  2. Отключить от питания
  3. Открытый кейс
  4. Вставить NIC
  5. Закрыть дело
  6. Подключите питание
  7. Загрузочный компьютер
alexanderpas
источник
4

Из того, как задан вопрос, не ясно, что имеется в виду, когда говорят, что машина имеет только eth0и eth1. Другие отвечающие сделали предположение, что существует только две карты NIC, но также возможно, что третий NIC уже установлен на компьютере, но не был "активирован" (или был явно отключен).

Предположим, что вы уверены, что у вас есть 3 карты NIC, но каким-то образом, когда вы делаете, ifconfigваш вывод выглядит примерно так:

lo        Link encap:Local 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:439793 errors:0 dropped:0 overruns:0 frame:0
          TX packets:439793 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:0 
          RX bytes:412415058 (412.4 MB)  TX bytes:412415058 (412.4 MB)

eth0      Link encap:Ethernet  HWaddr [mac address]
          [...]

eth1      Link encap:Ethernet  HWaddr [mac address]
          [...]

Кажется, есть противоречие, у вас есть 3 карты NIC, но только два порта. Это потому, что ifconfigпоказывает только те порты, которые "вверх". Поэтому единственное, что вам нужно сделать, это запустить команду:

ifconfig eth2 up

Помните, что его нужно запускать с правами root, делайте это так, как требуется в вашем дистрибутиве.

Вы можете комбинировать настройку IP-адреса с «поднятием порта»:

ifconfig eth2 192.168.222.2 netmask 255.255.255.0 up

«Вверх» должно быть после других вещей в этой строке, но все равно будет работать.

v010dya
источник