proxmox pci-e passtrough dual gigabit nic

Pagina: 1
Acties:

Vraag


Acties:
  • 0 Henk 'm!

  • 3dmaster
  • Registratie: December 2004
  • Laatst online: 24-09 10:42
Ik heb hier een broadcom bcm5709 dual port netwerk kaart. Ik wil deze kaart graag middels pci-passtrough doorzetten naar een pfsense vm.
Het probleem waar ik tegenaan loop is dat in de vm (pfsense) ik vervolgens wel twee poortjes zie maar deze hebben hetzelfde mac adres.

Ik gebruik proxmox 4.2-15

met lspci zie ik het volgende mbt tot deze kaart.

01:00.0 Ethernet controller: Broadcom Corporation NetXtreme II BCM5709 Gigabit Ethernet (rev 20)
01:00.1 Ethernet controller: Broadcom Corporation NetXtreme II BCM5709 Gigabit Ethernet (rev 20)

Nu dacht ik het door te kunnen zetten door
hostpci0: 01:00

toe te voegen aan mijn config van de pfsense vm.
Helaas krijg ik dan maar 1 poort ipv 2 te zien.

Als ik het doorzet dmv
hostpci0: 01:00.0
hostpci1: 01:00.1

dan zie ik 2 kaarten maar wel met het zelfde mac adres 8)7

Ik heb hetzelfde geprobeerd met de onboard intel nics.
03:00.0 Ethernet controller: Intel Corporation 82574L Gigabit Network Connection
04:00.0 Ethernet controller: Intel Corporation 82574L Gigabit Network Connection

Die krijgen in pfsense ook dezelfde mac :/

Is hier iemand die toevallig het zeflde al is heeft geprobeerd als wat ik probeer. Ik kan zo niemand vinden met eenzelfde probleem :')

Last night I lay in bed looking up at the stars in the sky and I thought to myself, where the heck is the ceiling.

Alle reacties


Acties:
  • 0 Henk 'm!

  • HollowGamer
  • Registratie: Februari 2009
  • Niet online
Je kan het MAC-adres niet wijzigen van één van de kaarten?

Acties:
  • +1 Henk 'm!

  • 3dmaster
  • Registratie: December 2004
  • Laatst online: 24-09 10:42
Ik heb het nu opgelost door de 2e interface aan te passen in pfsense middels mac spoof en nu werkt de constructie wel. Ik blijf t wel raar vinden dat dit niet goed gaat op de normale manier maar goed. Nu werkt t :)

Last night I lay in bed looking up at the stars in the sky and I thought to myself, where the heck is the ceiling.


Acties:
  • 0 Henk 'm!

  • Hero of Time
  • Registratie: Oktober 2004
  • Laatst online: 30-09 22:30

Hero of Time

Moderator LNX

There is only one Legend

Je kan altijd even vragen hoe dat zit op de mailing lijst van Proxmox.

Commandline FTW | Tweakt met mate


Acties:
  • +1 Henk 'm!

  • Thulium
  • Registratie: September 2011
  • Laatst online: 26-04 10:28
Voordat je met PCI passthrough aan de gang gaat, lees je eerst even in op IOMMU groepen. Je kunt dit artikeltje (http://vfio.blogspot.nl/2...roups-inside-and-out.html) erover lezen, maar in het kort:

Als je ondersteuning hebt op je CPU en het moederbord voor een IOMMU (VT-d, PCI Passthrough, AMD/IOMMU), moet je rekening houden met de volgende zaken:

IOMMU werkt met groepen, deze worden gebaseerd op de inrichting en architectuur van je moederbord. Als je de IOMMU driver in je Linux kernel aanzet (door in GRUB iets op te nemen als "amd_iommu=on iommu=pt"), zullen deze gemapt worden en kun je ze inzien door onderstaande commando te draaien:

code:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
# find /sys/kernel/iommu_groups/ -type l
/sys/kernel/iommu_groups/0/devices/0000:00:00.0
/sys/kernel/iommu_groups/1/devices/0000:00:02.0
/sys/kernel/iommu_groups/2/devices/0000:00:04.0
/sys/kernel/iommu_groups/3/devices/0000:00:09.0
/sys/kernel/iommu_groups/4/devices/0000:00:0a.0
/sys/kernel/iommu_groups/5/devices/0000:00:11.0
/sys/kernel/iommu_groups/6/devices/0000:00:12.0
/sys/kernel/iommu_groups/6/devices/0000:00:12.2
/sys/kernel/iommu_groups/7/devices/0000:00:13.0
/sys/kernel/iommu_groups/7/devices/0000:00:13.2
/sys/kernel/iommu_groups/8/devices/0000:00:14.0
/sys/kernel/iommu_groups/9/devices/0000:00:14.1
/sys/kernel/iommu_groups/10/devices/0000:00:14.2
/sys/kernel/iommu_groups/11/devices/0000:00:14.3
/sys/kernel/iommu_groups/12/devices/0000:00:14.4
/sys/kernel/iommu_groups/12/devices/0000:05:0e.0
/sys/kernel/iommu_groups/13/devices/0000:00:14.5
/sys/kernel/iommu_groups/14/devices/0000:00:15.0
/sys/kernel/iommu_groups/14/devices/0000:06:00.0
/sys/kernel/iommu_groups/15/devices/0000:00:16.0
/sys/kernel/iommu_groups/15/devices/0000:00:16.2
/sys/kernel/iommu_groups/16/devices/0000:01:00.0
/sys/kernel/iommu_groups/16/devices/0000:01:00.1
/sys/kernel/iommu_groups/17/devices/0000:02:00.0
/sys/kernel/iommu_groups/17/devices/0000:02:00.1
/sys/kernel/iommu_groups/18/devices/0000:03:00.0
/sys/kernel/iommu_groups/19/devices/0000:04:00.0


Wat je ziet in het bovenstaande stukje code is het volgende:

Nummer van de IOMMU groep en de PCI ID's die in de groep aanwezig zijn. Deze lijst is afkomstig van een Gigabyte moederbord met een AMD Vishera processor en heeft netjes voor ieder device een losse IOMMU groep. Ik heb dezelfde setup geprobeerd te bouwen op een Asus moederbord met een Intel Skylake CPU, maar daar was de indeling iets als:

- 1 groep voor PCIe slot 1
- 1 groep voor alle overige PCI/PCIe devices.
Naast groepen die niet interessant waren.

De truc met een IOMMU groep is dat wanneer je deze wilt doorgeven aan een VM je ALLE devices die lid zijn van de groep moet doorzetten.

Gezien de structuur (afgaand op de PCI-id's die je in je post hebt staan) van je netwerkkaart is het mogelijk dat deze NIET op te splitsen is (dit kun je overigens NIET zelf beinvloeden, het is echt hoe het ontworpen is) in 2 losse PCI devices. Als gevolg daarvan delen ze dus de geheugenspace en kan de IOMMU controller geen onderscheid maken tussen de twee devices.

En dat laatste is waar heel IOMMU mee valt of staat, je kunt alleen isolatie aanbieden als de IOMMU controle heeft over de gehele geheugenspace die binnen de groep valt.

Acties:
  • 0 Henk 'm!

  • 3dmaster
  • Registratie: December 2004
  • Laatst online: 24-09 10:42
Hmm de enige leden van de groep zijn ook de twee id's die ik al doorgeef.
code:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
/sys/kernel/iommu_groups/0/devices/0000:00:00.0
/sys/kernel/iommu_groups/1/devices/0000:00:03.0
/sys/kernel/iommu_groups/2/devices/0000:00:04.0
/sys/kernel/iommu_groups/3/devices/0000:00:09.0
/sys/kernel/iommu_groups/4/devices/0000:00:0a.0
/sys/kernel/iommu_groups/5/devices/0000:00:11.0
/sys/kernel/iommu_groups/6/devices/0000:00:12.0
/sys/kernel/iommu_groups/6/devices/0000:00:12.1
/sys/kernel/iommu_groups/6/devices/0000:00:12.2
/sys/kernel/iommu_groups/7/devices/0000:00:13.0
/sys/kernel/iommu_groups/7/devices/0000:00:13.1
/sys/kernel/iommu_groups/7/devices/0000:00:13.2
/sys/kernel/iommu_groups/8/devices/0000:00:14.0
/sys/kernel/iommu_groups/9/devices/0000:00:14.1
/sys/kernel/iommu_groups/10/devices/0000:00:14.3
/sys/kernel/iommu_groups/11/devices/0000:00:14.4
/sys/kernel/iommu_groups/11/devices/0000:05:04.0
/sys/kernel/iommu_groups/12/devices/0000:00:14.5
/sys/kernel/iommu_groups/13/devices/0000:01:00.0
/sys/kernel/iommu_groups/13/devices/0000:01:00.1
/sys/kernel/iommu_groups/14/devices/0000:02:00.0
/sys/kernel/iommu_groups/15/devices/0000:03:00.0
/sys/kernel/iommu_groups/16/devices/0000:04:00.0


't gaat om 01:00.0 en .1.

In elk geval werkt 't zo ook dus ben ik gered :)

Last night I lay in bed looking up at the stars in the sky and I thought to myself, where the heck is the ceiling.

Pagina: 1