простой виртуальный сетевой интерфейс

Вопросы программного кода и архитектуры Linux

Модератор: Olej

Аватара пользователя
Olej
Писатель
Сообщения: 21338
Зарегистрирован: 24 сен 2011, 14:22
Откуда: Харьков
Контактная информация:

простой виртуальный сетевой интерфейс

Непрочитанное сообщение Olej » 02 апр 2012, 13:41

Эта тема переползла из нескольких.
Вот исходные, где до конца толком не разобрались :
viewtopic.php?f=18&t=1618
viewtopic.php?f=18&t=1624
viewtopic.php?f=18&t=1623
Объяснять не буду - там в темах всё расписано ... хоть и разбросано.

Аватара пользователя
Olej
Писатель
Сообщения: 21338
Зарегистрирован: 24 сен 2011, 14:22
Откуда: Харьков
Контактная информация:

Re: простой виртуальный сетевой интерфейс

Непрочитанное сообщение Olej » 02 апр 2012, 13:45

В теме, откуда это непосредственно переползло (viewtopic.php?f=18&t=1624&p=3518#p3518) написана достаточно подробно формулировка:
Olej писал(а): 2. но зная какие тут будут неприятности с этим примером (уже писал раньше - полное заваливание системы) отрабатываем для начала на VirtualBox:

Код: Выделить всё

[root@fedora16vm crypto2]# uname -r
3.2.9-2.fc16.i686
3. для начала меня интересует выбросить всё нагромождение: криптографирование, фреймы 802.3 & 802.11, WiFi интерфейсы wlan0 ... потому что из-под этой горы мусора - не выбраться, это такой "плохой пыанэрский стиль": всё сразу... вместо этого интересует:
- повесить примитивный виртуальный сетевой интерфейс над обычным eth0 (или p7p1 в терминологии Fedora 16 ;-) )...
- и перенаправить потоки eth0 в этот интерфейс.
А детальнее, по шагам, это должно выглядеть так:

1. беру для начала опубликованный kit_D исходный код проекта модуля здесь: download/file.php?id=129
(более ранние варианты были здесь: download/file.php?id=124 и download/file.php?id=125)
более поздних вариантов kit_D не выкладывал (жаба задавила :?: :mrgreen: )

2. запуск его попытаюсь сделать как здесь - viewtopic.php?f=18&t=1618&start=10#p3165 :
insmod crypto0.ko
ifconfig crypto down
ifconfig crypto 172.28.155.7
./crypto_us wlan0
route del -net 172.28.155.0/24 wlan0
ifconfig crypto up
- для начала! потому что это неправильно! - новый интерфейс не должен по IP:mask принадлежать к уже существующей подсети.
(естественно, как уже было сказано, категорически заменяем сразу wlan0 на ... на что угодно ;-) , на eth0 )

3. после этого в коде планирую учесть-проверить поправки, изложенные здесь - viewtopic.php?f=18&t=1624&start=10#p3391 и viewtopic.php?f=18&t=1624&start=10#p3392

4. а потом всё это перекроить под свои представления...

P.S. всё, что п.2, вопреки прозвучавшим заверениям ;-) , у меня под VirtualBox не работает! (ни на уровне ICMP & ping, ни уж, тем более, UDP & TCP).

Аватара пользователя
Olej
Писатель
Сообщения: 21338
Зарегистрирован: 24 сен 2011, 14:22
Откуда: Харьков
Контактная информация:

Re: простой виртуальный сетевой интерфейс

Непрочитанное сообщение Olej » 02 апр 2012, 17:15

Olej писал(а): (естественно, как уже было сказано, категорически заменяем сразу wlan0 на ... на что угодно ;-) , на eth0 )
Поскольку это всё под VirtualBox, то я могу там иметь 2 по-разному настроенных "родительских" сетевых интерфейсов (в свойствах VM):

Код: Выделить всё

[root@fedora16vm crypto2]# ifconfig
...
p2p1      Link encap:Ethernet  HWaddr 08:00:27:14:CA:91  
          inet addr:192.168.1.20  Bcast:192.168.1.255  Mask:255.255.255.0
          inet6 addr: fe80::a00:27ff:fe14:ca91/64 Scope:Link
          UP BROADCAST RUNNING MULTICAST  MTU:1500  Metric:1
          RX packets:84741 errors:0 dropped:0 overruns:0 frame:0
          TX packets:48539 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:1000 
          RX bytes:99593986 (94.9 MiB)  TX bytes:4669108 (4.4 MiB)

p7p1      Link encap:Ethernet  HWaddr 08:00:27:9E:02:02  
          inet addr:192.168.56.101  Bcast:192.168.56.255  Mask:255.255.255.0
          inet6 addr: fe80::a00:27ff:fe9e:202/64 Scope:Link
          UP BROADCAST RUNNING MULTICAST  MTU:1500  Metric:1
          RX packets:46 errors:0 dropped:0 overruns:0 frame:0
          TX packets:545 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:1000 
          RX bytes:11582 (11.3 KiB)  TX bytes:32176 (31.4 KiB)
VMs1.png
VMs1.png (42.5 КБ) 11225 просмотров
- это интерфейс p2p1 - это реальный бридж с хостом и в LAN/WAN (это то, что в старом ядре - Fedora 14 - называлось бы как eth0)
VMs2.png
VMs2.png (58.97 КБ) 11378 просмотров
- это интерфейс p7p1 - объединяющий в отдельную подсеть только хост + все VMs (это то, что в старом ядре - Fedora 14 - называлось бы как eth1)

Аватара пользователя
Olej
Писатель
Сообщения: 21338
Зарегистрирован: 24 сен 2011, 14:22
Откуда: Харьков
Контактная информация:

Re: простой виртуальный сетевой интерфейс

Непрочитанное сообщение Olej » 02 апр 2012, 22:03

Olej писал(а): 1. беру для начала опубликованный kit_D исходный код проекта модуля здесь: download/file.php?id=129
(более ранние варианты были здесь: download/file.php?id=124 и download/file.php?id=125)
более поздних вариантов kit_D не выкладывал (жаба задавила :?: :mrgreen: )
kit_D, проект ваш - не живой :cry: ... т.е. он может при каких-то обстоятельствах и живёт, но что-то там существенно некорректно...
Повторяю пока практически ваш ход рассуждений:

Код: Выделить всё

[root@fedora16vm crypto2]# insmod crypto.ko
[root@fedora16vm crypto2]# ifconfig crypto0 down
[root@fedora16vm crypto2]# echo $?
0
[root@fedora16vm crypto2]# ifconfig crypto0 192.168.50.5
[root@fedora16vm crypto2]# route
Kernel IP routing table
Destination     Gateway         Genmask         Flags Metric Ref    Use Iface
default         192.168.1.1     0.0.0.0         UG    0      0        0 p2p1
192.168.1.0     *               255.255.255.0   U     1      0        0 p2p1
192.168.50.0    *               255.255.255.0   U     0      0        0 crypto0
192.168.56.0    *               255.255.255.0   U     0      0        0 p7p1

И "навешиваем" интерфейс:

Код: Выделить всё

[root@fedora16vm crypto2]# ./crypto_us p7p1
[root@fedora16vm crypto2]# dmesg | tail -n2
[38260.247678] Loading kernel module for a network device with CAP_SYS_MODULE (deprecated).  Use CAP_NET_ADMIN and alias netdev-crypto instead
[38318.111846] register rx handler for p7p1
P.S. откуда вот то сообщение о deprecated? и о чём оно? ... ядро:

Код: Выделить всё

[olej@fedora16vm crypto2]$ uname -r
3.2.9-2.fc16.i686
Дальше я не буду показывать (как ARP или ICMP не работают), а смотрим сюда:

Код: Выделить всё

[root@fedora16vm crypto2]# ifconfig
crypto0   Link encap:Ethernet  HWaddr 08:00:27:9E:91:CA
          inet addr:192.168.50.5  Bcast:192.168.50.255  Mask:255.255.255.0
          inet6 addr: fe80::24a3:c2ff:fe49:91ca/64 Scope:Link
          UP BROADCAST RUNNING MULTICAST  MTU:1500  Metric:1
          RX packets:56 errors:0 dropped:0 overruns:0 frame:0
          TX packets:41 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:1000
          RX bytes:5823 (5.6 KiB)  TX bytes:5792 (5.6 KiB)
...
p7p1      Link encap:Ethernet  HWaddr 08:00:27:9E:02:02
          inet addr:192.168.56.101  Bcast:192.168.56.255  Mask:255.255.255.0
          inet6 addr: fe80::a00:27ff:fe9e:202/64 Scope:Link
          UP BROADCAST RUNNING MULTICAST  MTU:1500  Metric:1
          RX packets:179 errors:0 dropped:0 overruns:0 frame:0
          TX packets:678 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:1000
          RX bytes:30860 (30.1 KiB)  TX bytes:44599 (43.5 KiB)
- IP у них отличаются, но HWaddr (MAC) должен совпадать! - мы хотим, чтоб это был один физический интерфейс.
А там случайные значения, установленные при инициализации интерфейсов.

Аватара пользователя
Olej
Писатель
Сообщения: 21338
Зарегистрирован: 24 сен 2011, 14:22
Откуда: Харьков
Контактная информация:

Re: простой виртуальный сетевой интерфейс

Непрочитанное сообщение Olej » 03 апр 2012, 01:30

Olej писал(а): - для начала! потому что это неправильно! - новый интерфейс не должен по IP:mask принадлежать к уже существующей подсети.
(естественно, как уже было сказано, категорически заменяем сразу wlan0 на ... на что угодно ;-) , на eth0 )
Кстати, кто подскажет - как создать IP-алиас для того интерфейса, с которого я собираюсь пинговать новый виртуальный?
Чтоб было понятнее:

Код: Выделить всё

[olej@nvidia ~]$ ifconfig vboxnet0
vboxnet0  Link encap:Ethernet  HWaddr 0A:00:27:00:00:00  
          inet addr:192.168.56.1  Bcast:192.168.56.255  Mask:255.255.255.0
          inet6 addr: fe80::800:27ff:fe00:0/64 Scope:Link
          UP BROADCAST RUNNING MULTICAST  MTU:1500  Metric:1
          RX packets:0 errors:0 dropped:0 overruns:0 frame:0
          TX packets:1309 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:1000 
          RX bytes:0 (0.0 b)  TX bytes:99133 (96.8 KiB)
Хотелось бы этому же интерфейсу присвоить ещё один алиасный IP из другой подсетки: 192.168.50.1
Как?
Когда-то это делалось так: http://www.linuxcenter.ru/lib/articles/ ... owto.phtml, но это дела давние...

Аватара пользователя
Olej
Писатель
Сообщения: 21338
Зарегистрирован: 24 сен 2011, 14:22
Откуда: Харьков
Контактная информация:

Re: простой виртуальный сетевой интерфейс

Непрочитанное сообщение Olej » 03 апр 2012, 01:37

Olej писал(а):Когда-то это делалось так: http://www.linuxcenter.ru/lib/articles/ ... owto.phtml, но это дела давние...
Кажется, что вопрос снят: сейчас это делается как и когда-то ;-) , только для этого не нужен специальный модуль ядра (всё вкомпилировано в ядро?):

Код: Выделить всё

[olej@nvidia ~]$ sudo ifconfig vboxnet0:0 192.168.50.1
[olej@nvidia ~]$ route
Kernel IP routing table
Destination     Gateway         Genmask         Flags Metric Ref    Use Iface
default         192.168.1.1     0.0.0.0         UG    0      0        0 eth0
192.168.1.0     *               255.255.255.0   U     1      0        0 eth0
192.168.50.0    *               255.255.255.0   U     0      0        0 vboxnet0
192.168.56.0    *               255.255.255.0   U     0      0        0 vboxnet0
[olej@nvidia ~]$ ifconfig
...
vboxnet0  Link encap:Ethernet  HWaddr 0A:00:27:00:00:00  
          inet addr:192.168.56.1  Bcast:192.168.56.255  Mask:255.255.255.0
          inet6 addr: fe80::800:27ff:fe00:0/64 Scope:Link
          UP BROADCAST RUNNING MULTICAST  MTU:1500  Metric:1
          RX packets:0 errors:0 dropped:0 overruns:0 frame:0
          TX packets:1317 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:1000 
          RX bytes:0 (0.0 b)  TX bytes:100193 (97.8 KiB)
vboxnet0:0 Link encap:Ethernet  HWaddr 0A:00:27:00:00:00  
          inet addr:192.168.50.1  Bcast:192.168.50.255  Mask:255.255.255.0
          UP BROADCAST RUNNING MULTICAST  MTU:1500  Metric:1

Код: Выделить всё

[olej@nvidia ~]$ ip addr
...
3: vboxnet0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast state UNKNOWN qlen 1000
    link/ether 0a:00:27:00:00:00 brd ff:ff:ff:ff:ff:ff
    inet 192.168.56.1/24 brd 192.168.56.255 scope global vboxnet0
    inet 192.168.50.1/24 brd 192.168.50.255 scope global vboxnet0:0
    inet6 fe80::800:27ff:fe00:0/64 scope link 
       valid_lft forever preferred_lft forever

Аватара пользователя
Olej
Писатель
Сообщения: 21338
Зарегистрирован: 24 сен 2011, 14:22
Откуда: Харьков
Контактная информация:

Re: простой виртуальный сетевой интерфейс

Непрочитанное сообщение Olej » 03 апр 2012, 02:07

Olej писал(а):- IP у них отличаются, но HWaddr (MAC) должен совпадать! - мы хотим, чтоб это был один физический интерфейс.
А там случайные значения, установленные при инициализации интерфейсов.
И вот теперь всё становится нормально!

При инициализации перехвата интерфейса меняем то, что было:

Код: Выделить всё

   memcpy( dev->dev_addr, slave->dev_addr, sizeof( slave->dev_addr ) );
   memcpy(dev->broadcast, slave->broadcast, sizeof( slave->broadcast ) );
- это вообще непонятно что записано, учитывая, что slave->dev_addr - это указатель... меняем на то, что стало:

Код: Выделить всё

   memcpy( dev->dev_addr, slave->dev_addr, ETH_ALEN );
   memcpy( dev->broadcast, slave->broadcast, ETH_ALEN );
(ETH_ALEN - это как-раз 6 байт - длина MAC-адреса).

И теперь проверяем:

1.

Код: Выделить всё

[root@fedora16vm crypto2]# insmod crypto.ko
[root@fedora16vm crypto2]# ifconfig crypto0 down
[root@fedora16vm crypto2]# ifconfig crypto0 192.168.50.5
- создали новый сетевой интерфейс в подсетке 192.168.50.0:

Код: Выделить всё

[root@fedora16vm crypto2]# ifconfig crypto0
crypto0   Link encap:Ethernet  HWaddr 00:01:02:03:04:05  
          inet addr:192.168.50.5  Bcast:192.168.50.255  Mask:255.255.255.0
          inet6 addr: fe80::201:2ff:fe03:405/64 Scope:Link
          UP BROADCAST RUNNING MULTICAST  MTU:1500  Metric:1
          RX packets:0 errors:0 dropped:0 overruns:0 frame:0
          TX packets:26 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:1000 
          RX bytes:0 (0.0 b)  TX bytes:4998 (4.8 KiB)
- с характерным MAC-адресом, я его так создал, чтобы хорошо видеть.

2. "навесили" этот интерфейс на существующий:

Код: Выделить всё

[root@fedora16vm crypto2]# ./crypto_us p7p1
[root@fedora16vm crypto2]# ifconfig 
crypto0   Link encap:Ethernet  HWaddr 08:00:27:9E:02:02  
          inet addr:192.168.50.5  Bcast:192.168.50.255  Mask:255.255.255.0
          inet6 addr: fe80::201:2ff:fe03:405/64 Scope:Link
          UP BROADCAST RUNNING MULTICAST  MTU:1500  Metric:1
          RX packets:0 errors:0 dropped:0 overruns:0 frame:0
          TX packets:26 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:1000 
          RX bytes:0 (0.0 b)  TX bytes:4998 (4.8 KiB)
...
p7p1      Link encap:Ethernet  HWaddr 08:00:27:9E:02:02  
          inet addr:192.168.56.101  Bcast:192.168.56.255  Mask:255.255.255.0
          inet6 addr: fe80::a00:27ff:fe9e:202/64 Scope:Link
          UP BROADCAST RUNNING MULTICAST  MTU:1500  Metric:1
          RX packets:331 errors:0 dropped:0 overruns:0 frame:0
          TX packets:802 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:1000 
          RX bytes:48921 (47.7 KiB)  TX bytes:53199 (51.9 KiB)
- как удивительно совпали MAC-адреса! :-o
С роутингом ничего крутить не надо - он сам встал:

Код: Выделить всё

[root@fedora16vm crypto2]# route
Kernel IP routing table
Destination     Gateway         Genmask         Flags Metric Ref    Use Iface
default         192.168.1.1     0.0.0.0         UG    0      0        0 p2p1
192.168.1.0     *               255.255.255.0   U     1      0        0 p2p1
192.168.50.0    *               255.255.255.0   U     0      0        0 crypto0
192.168.56.0    *               255.255.255.0   U     0      0        0 p7p1
3. теперь на ответном конце линии (на хост-компьютере VirtualBox) делаем хост той же подсетки 192.168.50.0:

Код: Выделить всё

[olej@nvidia ~]$ sudo ifconfig vboxnet0:0 192.168.50.1
[olej@nvidia ~]$ route
Kernel IP routing table
Destination     Gateway         Genmask         Flags Metric Ref    Use Iface
default         192.168.1.1     0.0.0.0         UG    0      0        0 eth0
192.168.1.0     *               255.255.255.0   U     1      0        0 eth0
192.168.50.0    *               255.255.255.0   U     0      0        0 vboxnet0
192.168.56.0    *               255.255.255.0   U     0      0        0 vboxnet0
[olej@nvidia ~]$ ip addr
...
3: vboxnet0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast state UNKNOWN qlen 1000
    link/ether 0a:00:27:00:00:00 brd ff:ff:ff:ff:ff:ff
    inet 192.168.56.1/24 brd 192.168.56.255 scope global vboxnet0
    inet 192.168.50.1/24 brd 192.168.50.255 scope global vboxnet0:0
    inet6 fe80::800:27ff:fe00:0/64 scope link 
       valid_lft forever preferred_lft forever
4. Всё!
- Пинг с хоста на гостевой интерфейс:

Код: Выделить всё

[olej@nvidia ~]$ ping 192.168.50.5
PING 192.168.50.5 (192.168.50.5) 56(84) bytes of data.
64 bytes from 192.168.50.5: icmp_req=1 ttl=64 time=0.477 ms
64 bytes from 192.168.50.5: icmp_req=2 ttl=64 time=0.288 ms
64 bytes from 192.168.50.5: icmp_req=3 ttl=64 time=0.267 ms
^C
--- 192.168.50.5 ping statistics ---
3 packets transmitted, 3 received, 0% packet loss, time 1999ms
rtt min/avg/max/mdev = 0.267/0.344/0.477/0.094 ms
- Пинг с гостевого интерфейса на хост:

Код: Выделить всё

[olej@fedora16vm crypto2]$ ping 192.168.50.1
PING 192.168.50.1 (192.168.50.1) 56(84) bytes of data.
64 bytes from 192.168.50.1: icmp_req=1 ttl=64 time=1.93 ms
64 bytes from 192.168.50.1: icmp_req=2 ttl=64 time=0.314 ms
64 bytes from 192.168.50.1: icmp_req=3 ttl=64 time=0.379 ms
^C
--- 192.168.50.1 ping statistics ---
3 packets transmitted, 3 received, 0% packet loss, time 2004ms
rtt min/avg/max/mdev = 0.314/0.876/1.937/0.751 ms
А вот то, что tcpdump на гостевой VM видел на интерфейсе crypto0 при этих пингах:

Код: Выделить всё

[root@fedora16vm crypto2]# tcpdump -i crypto0
tcpdump: verbose output suppressed, use -v or -vv for full protocol decode
listening on crypto0, link-type EN10MB (Ethernet), capture size 65535 bytes
01:40:05.390084 ARP, Request who-has 192.168.50.5 tell 192.168.50.1, length 46
01:40:05.390141 ARP, Reply 192.168.50.5 is-at 08:00:27:9e:02:02 (oui Unknown), length 28
01:40:05.390217 IP 192.168.50.1 > 192.168.50.5: ICMP echo request, id 4581, seq 1, length 64
01:40:05.390273 IP 192.168.50.5 > 192.168.50.1: ICMP echo reply, id 4581, seq 1, length 64
01:40:06.390206 IP 192.168.50.1 > 192.168.50.5: ICMP echo request, id 4581, seq 2, length 64
01:40:06.390262 IP 192.168.50.5 > 192.168.50.1: ICMP echo reply, id 4581, seq 2, length 64
01:40:07.390059 IP 192.168.50.1 > 192.168.50.5: ICMP echo request, id 4581, seq 3, length 64
01:40:07.390110 IP 192.168.50.5 > 192.168.50.1: ICMP echo reply, id 4581, seq 3, length 64
01:40:10.398176 ARP, Request who-has 192.168.50.1 tell 192.168.50.5, length 28
01:40:10.398298 ARP, Reply 192.168.50.1 is-at 0a:00:27:00:00:00 (oui Unknown), length 46
01:40:41.419029 IP 192.168.50.5 > 192.168.50.1: ICMP echo request, id 24503, seq 1, length 64
01:40:41.420803 IP 192.168.50.1 > 192.168.50.5: ICMP echo reply, id 24503, seq 1, length 64
01:40:42.420708 IP 192.168.50.5 > 192.168.50.1: ICMP echo request, id 24503, seq 2, length 64
01:40:42.420985 IP 192.168.50.1 > 192.168.50.5: ICMP echo reply, id 24503, seq 2, length 64
01:40:43.423086 IP 192.168.50.5 > 192.168.50.1: ICMP echo request, id 24503, seq 3, length 64
01:40:43.423425 IP 192.168.50.1 > 192.168.50.5: ICMP echo reply, id 24503, seq 3, length 64
01:40:46.432054 ARP, Request who-has 192.168.50.5 tell 192.168.50.1, length 46
01:40:46.432086 ARP, Reply 192.168.50.5 is-at 08:00:27:9e:02:02 (oui Unknown), length 28
^C
18 packets captured
18 packets received by filter
0 packets dropped by kernel

Аватара пользователя
Olej
Писатель
Сообщения: 21338
Зарегистрирован: 24 сен 2011, 14:22
Откуда: Харьков
Контактная информация:

Re: простой виртуальный сетевой интерфейс

Непрочитанное сообщение Olej » 03 апр 2012, 02:12

Olej писал(а): И вот теперь всё становится нормально!
И окончательная победа :-o :

Код: Выделить всё

[olej@fedora16vm crypto2]$ ssh olej@192.168.50.1
The authenticity of host '192.168.50.1 (192.168.50.1)' can't be established.
RSA key fingerprint is b0:ab:bb:3f:a8:53:ad:0e:2a:69:7d:36:70:78:6e:71.
Are you sure you want to continue connecting (yes/no)? yes
Warning: Permanently added '192.168.50.1' (RSA) to the list of known hosts.
Nasty PTR record "192.168.50.1" is set up for 192.168.50.1, ignoring
olej@192.168.50.1's password: 
Last login: Mon Apr  2 19:27:44 2012 from 192.168.56.101
[olej@nvidia ~]$ u_n_a_m_e -a
Linux nvidia.localdomain 2.6.42.12-1.fc15.i686.PAE #1 SMP Tue Mar 20 16:19:17 UTC 2012 i686 i686 i386 GNU/Linux
[olej@nvidia ~]$ exit
logout
Connection to 192.168.50.1 closed.
- с гостевого компьютера, через новый виртуальный интерфейс, открываем сессию SSH (TCP протокол с ACK и всё такое), и благополучно логиним сессию на хосте...

Аватара пользователя
Olej
Писатель
Сообщения: 21338
Зарегистрирован: 24 сен 2011, 14:22
Откуда: Харьков
Контактная информация:

Re: простой виртуальный сетевой интерфейс

Непрочитанное сообщение Olej » 03 апр 2012, 10:36

Olej писал(а): Кажется, что вопрос снят: сейчас это делается как и когда-то ;-) ,
Всем, кто интересуется сетевыми интерфейсами!
Обратите внимание, насколько упрощает работу и отладку с сетевыми интерфейсами манипулирование с алиасными IP!

Забегая вперёд, вопросы к залу ... будут какие соображения?:

1. как повторно загрузить модуль под другим именем?
(для сетевых интерфейсов, как устройств фиктивных ;-) - это может иметь смысл)...
Поясняю подробнее:
- как? загрузить файл модуля xxx.ko так...
- что, если модуль xxx уже загружен,
- так он бы загрузился как xxx0 (но, скажем, с какими-то другими параметрами загрузки в командной строке).

kit_D
Писатель
Сообщения: 52
Зарегистрирован: 13 мар 2012, 13:14
Откуда: Харьков
Контактная информация:

Re: простой виртуальный сетевой интерфейс

Непрочитанное сообщение kit_D » 03 апр 2012, 10:48

Хотелось бы этому же интерфейсу присвоить ещё один алиасный IP из другой подсетки: 192.168.50.1
Как?
Для этого надо использовать утилиту ip. ifconfig является устаревшим инструментом (не поддерживает netlink), в то время как утилита ip (пакета iproute2) является новым и гораздо более обширным средством настройки сетевой подсистемы.

Ответить

Вернуться в «Linux изнутри»

Кто сейчас на конференции

Сейчас этот форум просматривают: нет зарегистрированных пользователей и 4 гостя