Страница 1 из 1
сетевые интерфейсы (реальные и виртуальные)
Добавлено: 16 мар 2012, 14:17
Olej
Пока крутились здесь в соседней теме о написании сетевых модулей ядра:
viewtopic.php?f=18&t=1618 - обратил я внимание на одну интересную штучку
:
1. стоит VirtualBox ... последний, сегодня обновлённый, с сайта Oracle - VirtualBox-4.1-4.1.10_76795 ... но это не так важно.
2. в нём установлено много разных VM:
3. на самом базовом хосте в VirtualBox создан виртуаьный интерфейс
vboxnet0 "внутренней LAN" в терминологии VirtualBox:
Код: Выделить всё
[olej@nvidia 16]$ ifconfig
eth0 Link encap:Ethernet HWaddr F4:6D:04:60:78:6F
inet addr:192.168.1.9 Bcast:192.168.1.255 Mask:255.255.255.0
inet6 addr: fe80::f66d:4ff:fe60:786f/64 Scope:Link
UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1
RX packets:6184 errors:0 dropped:0 overruns:0 frame:0
TX packets:6435 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:1000
RX bytes:4035243 (3.8 MiB) TX bytes:928495 (906.7 KiB)
Interrupt:43 Base address:0x6000
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:16436 Metric:1
RX packets:111 errors:0 dropped:0 overruns:0 frame:0
TX packets:111 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:0
RX bytes:12236 (11.9 KiB) TX bytes:12236 (11.9 KiB)
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:89 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:1000
RX bytes:0 (0.0 b) TX bytes:23683 (23.1 KiB)
virbr0 Link encap:Ethernet HWaddr 6E:9A:60:A7:FD:5F
inet addr:192.168.122.1 Bcast:192.168.122.255 Mask:255.255.255.0
UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1
RX packets:0 errors:0 dropped:0 overruns:0 frame:0
TX packets:59 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:0
RX bytes:0 (0.0 b) TX bytes:9549 (9.3 KiB)
4. 2 из установленных VM запущены: Fedora 14 & Fedora 16... крутятся...
5. на каждом из Linux (VM) созданы по 2 сетевых интерфейса: сетевой мост к eth0 (подсеть 192.168.1.0 - это реальная LAN) + виртуальный сетевой адаптер к vboxnet0 (подсеть 192.168.56.0 - это виртуальная LAN внутри VirtualBox). Всё это (сетевые интерфейсы) хорошо видно на картинке (только в области полос прокрутки).
Всё это замечательно работает... о чём будет в следующих постах, в подтверждение "замечательности"
, потому как из тех VM я могу сюда в форум копировать только из их собственных браузеров по их собственным коннектам...
Re: сетевые интерфейсы (реальные и виртуальные)
Добавлено: 16 мар 2012, 14:45
Olej
Начнём с Fedora 14:
Код: Выделить всё
[olej@vmFedora ~]$ ifconfig
eth1 Link encap:Ethernet HWaddr 08:00:27:C2:A2:30
inet addr:192.168.1.21 Bcast:192.168.1.255 Mask:255.255.255.0
UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1
RX packets:51 errors:0 dropped:0 overruns:0 frame:0
TX packets:54 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:1000
RX bytes:15447 (15.0 KiB) TX bytes:7165 (6.9 KiB)
eth3 Link encap:Ethernet HWaddr 08:00:27:41:D0:39
inet addr:192.168.56.101 Bcast:192.168.56.255 Mask:255.255.255.0
UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1
RX packets:2 errors:0 dropped:0 overruns:0 frame:0
TX packets:13 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:1000
RX bytes:1180 (1.1 KiB) TX bytes:3724 (3.6 KiB)
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:6 errors:0 dropped:0 overruns:0 frame:0
TX packets:6 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:0
RX bytes:300 (300.0 b) TX bytes:300 (300.0 b)
Здесь всё понятно...
За малым исключением: почему eth1 а не eth0 + почему следующий 2-й интерфейс - eth3 ...
Какой-то странный счёт
Вот ого обмен со своим "соседом" Fedora 16 внутри виртуальной сетки VirtualBox, которая никому кроме этого самого VirtualBox не видна:
Код: Выделить всё
[olej@vmFedora ~]$ ping 192.168.56.102
PING 192.168.56.102 (192.168.56.102) 56(84) bytes of data.
64 bytes from 192.168.56.102: icmp_req=1 ttl=64 time=2.11 ms
64 bytes from 192.168.56.102: icmp_req=2 ttl=64 time=0.516 ms
64 bytes from 192.168.56.102: icmp_req=3 ttl=64 time=0.433 ms
^C
--- 192.168.56.102 ping statistics ---
3 packets transmitted, 3 received, 0% packet loss, time 2001ms
rtt min/avg/max/mdev = 0.433/1.021/2.116/0.775 ms
Ну а обмен в наружу - без проблем ... иначе я сюда ничего бы не смог написать...
Re: сетевые интерфейсы (реальные и виртуальные)
Добавлено: 16 мар 2012, 14:54
Olej
Olej писал(а):Начнём с Fedora 14:
А теперь - Fedora 16...
А теперь - горбатый, я сказал!
Код: Выделить всё
[olej@nvidia ~]$ 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:16436 Metric:1
RX packets:48 errors:0 dropped:0 overruns:0 frame:0
TX packets:48 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:0
RX bytes:3648 (3.5 KiB) TX bytes:3648 (3.5 KiB)
p2p1 Link encap:Ethernet HWaddr 08:00:27:47:CF:BE
inet addr:192.168.1.20 Bcast:192.168.1.255 Mask:255.255.255.0
inet6 addr: fe80::a00:27ff:fe47:cfbe/64 Scope:Link
UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1
RX packets:24 errors:0 dropped:0 overruns:0 frame:0
TX packets:47 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:1000
RX bytes:3312 (3.2 KiB) TX bytes:6684 (6.5 KiB)
p7p1 Link encap:Ethernet HWaddr 08:00:27:B0:D2:2E
inet addr:192.168.56.102 Bcast:192.168.56.255 Mask:255.255.255.0
inet6 addr: fe80::a00:27ff:feb0:d22e/64 Scope:Link
UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1
RX packets:2 errors:0 dropped:0 overruns:0 frame:0
TX packets:28 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:1000
RX bytes:1180 (1.1 KiB) TX bytes:5455 (5.3 KiB)
Что это за такие интерфейсы
p2p1 &
p7p1 ?
И насколько я понимаю, это вовсе не трюки VirtualBox, а это ... естественное состояние дущи Fedora 16?
В нативной установке должно быть
то же самое.
Может кто глянуть как это выглядит в нативе?
И всё это с именами интерфейсов по-честному:
Код: Выделить всё
[olej@nvidia ~]$ ping -I p7p1 192.168.56.101
Warning: cannot bind to specified iface, falling back: Операция не позволяется
PING 192.168.56.101 (192.168.56.101) from 192.168.56.102 p7p1: 56(84) bytes of data.
64 bytes from 192.168.56.101: icmp_req=1 ttl=64 time=0.688 ms
64 bytes from 192.168.56.101: icmp_req=2 ttl=64 time=0.356 ms
64 bytes from 192.168.56.101: icmp_req=3 ttl=64 time=0.414 ms
^C
--- 192.168.56.101 ping statistics ---
3 packets transmitted, 3 received, 0% packet loss, time 2000ms
rtt min/avg/max/mdev = 0.356/0.486/0.688/0.144 ms
Из реальной LAN (по её интерфейсу) - никто не ответит:
Код: Выделить всё
[olej@nvidia ~]$ ping -I p2p1 192.168.56.101
Warning: cannot bind to specified iface, falling back: Операция не позволяется
PING 192.168.56.101 (192.168.56.101) from 192.168.56.102 p2p1: 56(84) bytes of data.
^C
--- 192.168.56.101 ping statistics ---
8 packets transmitted, 0 received, 100% packet loss, time 7000ms
Re: сетевые интерфейсы (реальные и виртуальные)
Добавлено: 16 мар 2012, 15:10
Olej
вот увидел некоторую информацию в тему:
http://linuxforum.ru/viewtopic.php?id=15519
2011-08-03
Блин... Ларчик просто открывался. У меня самба и openVPN-шлюз на одном компьютере (на ремутной площадке) установлены. При этом в конфиге самбы явно указан адрес, интерфейс (p2p1), к которому надо прибиндить эту самбу. Казалось бы, он и должен там сидеть и работать с этого адреса. Ан нет. Запросы на центральный сервер шли не p2p1-интерфейса (физического, LAN), а с VPN-интерфейса, с tun0. А тот имеет совсем иной адрес.
http://www.traffpro.ru/forum/textversion.html?t2186
14 августа 2011
Здравствуйте, установил traffpro на fedora 15, запустил админку, завел клиента, но инет ему не раздается. Предположительно подвох а именах интерфейсов. biosdevname=0 в /etc/grub.conf не помогает - интерфейсы все равно p2p1 и p7p1. NetworkManager отключен. Подскажите пожалуйста.
PS Есть опыт установки на fedora12, все работает.
Это всё: ~август 2011 - время Fedora 15.
Re: сетевые интерфейсы (реальные и виртуальные)
Добавлено: 16 мар 2012, 15:27
Olej
Olej писал(а):Это всё: ~август 2011 - время Fedora 15.
Пока это вызывает лёгкое недоумение:
- с версией ядра это, вроде как, не связано (?), вот картина в установленном но Fedora 12 но с ядром собранным переустановленным 3.0.9:
Код: Выделить всё
[olej@notebook ~]$ ifconfig
eth0 Link encap:Ethernet HWaddr 00:15:60:C4:EE:02
UP BROADCAST MULTICAST MTU:1500 Metric:1
RX packets:0 errors:0 dropped:0 overruns:0 frame:0
TX packets:0 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:1000
RX bytes:0 (0.0 b) TX bytes:0 (0.0 b)
Interrupt:16
...
wlan0 Link encap:Ethernet HWaddr 00:13:02:69:70:9B
inet addr:192.168.1.22 Bcast:192.168.1.255 Mask:255.255.255.0
inet6 addr: fe80::213:2ff:fe69:709b/64 Scope:Link
UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1
RX packets:1324 errors:0 dropped:0 overruns:0 frame:0
TX packets:1225 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:1000
RX bytes:1018580 (994.7 KiB) TX bytes:168737 (164.7 KiB)
- имя интерфейса
зашито в код модуля, а модули собираются одновременно с ядром...
Откуда? и когда? возникло такое изменение... и где оно находится?
Re: сетевые интерфейсы (реальные и виртуальные)
Добавлено: 16 мар 2012, 23:01
Ali
Работа удев.
Код: Выделить всё
$ dmesg | grep eth
[ 11.984888] r8169 0000:04:00.0: eth0: RTL8168b/8111b at 0xffffc900057f0000, 00:1a:4d:93:12:c9, XID 18000000 IRQ 46
[ 11.984891] r8169 0000:04:00.0: eth0: jumbo features [frames: 4080 bytes, tx checksumming: ko]
[ 11.994311] i2c-core: driver [tuner] using legacy suspend method
[ 11.994314] i2c-core: driver [tuner] using legacy resume method
[ 13.038131] udevd[488]: renamed network interface eth0 to p20p1
2.3. Networking
2.3.1. Network Device Naming
Servers often have multiple Ethernet ports, either embedded on the motherboard, or on add-in PCI cards. Linux has traditionally named these ports ethX, but there has been no correlation of the ethX names to the chassis labels - the ethX names are non-deterministic. Starting in Fedora 15, Ethernet ports will have a new naming scheme corresponding to physical locations, rather than ethX. Ethernet ports embedded on server motherboards will be named em<port_number>, while ports on PCI cards will be named p<slot_number>p<port_number>, corresponding to the chassis labels. Additionally, if the network device is an SR-IOV Virtual Function or has Network Partitioning (NPAR) capability, the name will have a suffix of _<virtual_function> or _<partition>.
By changing the naming convention, system administrators will no longer have to guess at the ethX to physical port mapping, or invoke workarounds on each system to rename them into some "sane" order.
This feature affects all physical systems that expose network port naming information in SMBIOS 2.6 or later (specifically field types 9 and 41). Dell PowerEdge 10G and newer servers (PowerEdge 1950 III family, PowerEdge R710 family, and newer), and HP ProLiant G6 servers and newer are known to expose this information, as do some newer desktop models. Furthermore, most older systems expose some information in the PCI IRQ Routing Table, which will be consulted if information is not provided by SMBIOS.
Fedora running as a guest virtual machine will continue to use the ethX names.
Existing installations upgraded to Fedora 15 will not see a change in names unless /etc/udev/rules.d/70-persistent-net.rules is deleted and the HWADDR lines are removed from all /etc/sysconfig/network-scripts/ifcfg-* files, and those files are renamed to use the new device names.
You may continue to write rules in /etc/udev/rules.d/70-persistent-net.rules to change the device names to anything you wish. Such will take precedence over this physical location naming scheme. Such rules may look like:
SUBSYSTEM=="net", ACTION=="add", DRIVERS=="?*", \
ATTR{address}=="00:11:22:33:44:55", ATTR{type}=="1", \
KERNEL=="eth*", NAME="public"
This feature may be disabled by passing "biosdevname=0" on the kernel command line, in which case, behavior will revert to using ethX names.
http://docs.fedoraproject.org/en-US/Fed ... Networking
Re: сетевые интерфейсы (реальные и виртуальные)
Добавлено: 17 мар 2012, 01:11
Olej
Ali писал(а):Работа удев.
OK, понятно.
Хотелось бы ещё некоторых уточнений, какие возможно:
2.3. Networking
Starting in Fedora 15, Ethernet ports will have a new naming scheme corresponding to physical locations, rather than ethX. Ethernet ports embedded on server motherboards will be named em<port_number>, while ports on PCI cards will be named p<slot_number>p<port_number>, corresponding to the chassis labels. Additionally, if the network device is an SR-IOV Virtual Function or has Network Partitioning (NPAR) capability, the name will have a suffix of _<virtual_function> or _<partition>.
Здесь сказано о Fedora 15.
Относится ли это как-то к другим дистрибутивам, к Linux вообще? ... это достаточно радикальное изменение, уходящее в сторону от того, что долго было в других POSIX системах.
Fedora running as a guest virtual machine will continue to use the ethX names.
Картина, которую я увидел, как раз и проявилась в Fedora 16 гостевой в VirtualBox:
Код: Выделить всё
[olej@nvidia virt]$ dmesg | grep udev
[ 2.491067] udevd[99]: starting version 173
[ 7.764223] udevd[381]: starting version 173
[ 7.891675] udevd[381]: specified group 'plugdev' unknown
[ 12.423664] udevd[417]: renamed network interface eth0 to p2p1
[ 12.491411] udevd[430]: renamed network interface eth1 to p7p1
Re: сетевые интерфейсы (реальные и виртуальные)
Добавлено: 18 мар 2012, 22:55
kit_D
Интересно. А зачем они это сделали?