[Unit]
Description=Enable SR-IOV and detach guest VFs from host
Requires=network.target
After=network.target
Before=pve-firewall.service
[Service]
Type=oneshot
RemainAfterExit=yes
# Create NIC VFs
# Starting SR-IOV
ExecStart=/usr/bin/bash -c '/usr/bin/echo 10 > /sys/class/net/enp98s0f0np0/device/sriov_numvfs'
ExecStart=/usr/bin/bash -c '/usr/bin/echo 10 > /sys/class/net/enp98s0f1np1/device/sriov_numvfs'
ExecStart=/usr/bin/bash -c '/usr/bin/echo 10 > /sys/class/net/enp98s0f2np2/device/sriov_numvfs'
ExecStart=/usr/bin/bash -c '/usr/bin/echo 10 > /sys/class/net/enp98s0f3np3/device/sriov_numvfs'
ExecStart=/usr/bin/bash -c '/usr/bin/echo 8 > /sys/class/net/enp33s0f0np0/device/sriov_numvfs'
ExecStart=/usr/bin/bash -c '/usr/bin/echo 8 > /sys/class/net/enp33s0f1np1/device/sriov_numvfs'
# Setting static MAC for VFs
ExecStart=/usr/bin/bash -c '/usr/bin/ip link set enp98s0f0np0 vf 0 mac aa:a7:86:7d:85:e0'
ExecStart=/usr/bin/bash -c '/usr/bin/ip link set enp98s0f0np0 vf 1 mac aa:a7:86:7d:85:e1'
ExecStart=/usr/bin/bash -c '/usr/bin/ip link set enp98s0f0np0 vf 2 mac aa:a7:86:7d:85:e2'
ExecStart=/usr/bin/bash -c '/usr/bin/ip link set enp98s0f0np0 vf 3 mac aa:a7:86:7d:85:e3'
ExecStart=/usr/bin/bash -c '/usr/bin/ip link set enp98s0f0np0 vf 4 mac aa:a7:86:7d:85:e4'
ExecStart=/usr/bin/bash -c '/usr/bin/ip link set enp98s0f0np0 vf 5 mac aa:a7:86:7d:85:e5'
ExecStart=/usr/bin/bash -c '/usr/bin/ip link set enp98s0f0np0 vf 6 mac aa:a7:86:7d:85:e6'
ExecStart=/usr/bin/bash -c '/usr/bin/ip link set enp98s0f0np0 vf 7 mac aa:a7:86:7d:85:e7'
ExecStart=/usr/bin/bash -c '/usr/bin/ip link set enp98s0f0np0 vf 8 mac aa:a7:86:7d:85:e8'
ExecStart=/usr/bin/bash -c '/usr/bin/ip link set enp98s0f0np0 vf 9 mac aa:a7:86:7d:85:e9'
ExecStart=/usr/bin/bash -c '/usr/bin/ip link set enp98s0f1np1 vf 0 mac ba:a7:86:7d:85:e0'
ExecStart=/usr/bin/bash -c '/usr/bin/ip link set enp98s0f1np1 vf 1 mac ba:a7:86:7d:85:e1'
ExecStart=/usr/bin/bash -c '/usr/bin/ip link set enp98s0f1np1 vf 2 mac ba:a7:86:7d:85:e2'
ExecStart=/usr/bin/bash -c '/usr/bin/ip link set enp98s0f1np1 vf 3 mac ba:a7:86:7d:85:e3'
ExecStart=/usr/bin/bash -c '/usr/bin/ip link set enp98s0f1np1 vf 4 mac ba:a7:86:7d:85:e4'
ExecStart=/usr/bin/bash -c '/usr/bin/ip link set enp98s0f1np1 vf 5 mac ba:a7:86:7d:85:e5'
ExecStart=/usr/bin/bash -c '/usr/bin/ip link set enp98s0f1np1 vf 6 mac ba:a7:86:7d:85:e6'
ExecStart=/usr/bin/bash -c '/usr/bin/ip link set enp98s0f1np1 vf 7 mac ba:a7:86:7d:85:e7'
ExecStart=/usr/bin/bash -c '/usr/bin/ip link set enp98s0f1np1 vf 8 mac ba:a7:86:7d:85:e8'
ExecStart=/usr/bin/bash -c '/usr/bin/ip link set enp98s0f1np1 vf 9 mac ba:a7:86:7d:85:e9'
ExecStart=/usr/bin/bash -c '/usr/bin/ip link set enp98s0f2np2 vf 0 mac ca:a7:86:7d:85:e0'
ExecStart=/usr/bin/bash -c '/usr/bin/ip link set enp98s0f2np2 vf 1 mac ca:a7:86:7d:85:e1'
ExecStart=/usr/bin/bash -c '/usr/bin/ip link set enp98s0f2np2 vf 2 mac ca:a7:86:7d:85:e2'
ExecStart=/usr/bin/bash -c '/usr/bin/ip link set enp98s0f2np2 vf 3 mac ca:a7:86:7d:85:e3'
ExecStart=/usr/bin/bash -c '/usr/bin/ip link set enp98s0f2np2 vf 4 mac ca:a7:86:7d:85:e4'
ExecStart=/usr/bin/bash -c '/usr/bin/ip link set enp98s0f2np2 vf 5 mac ca:a7:86:7d:85:e5'
ExecStart=/usr/bin/bash -c '/usr/bin/ip link set enp98s0f2np2 vf 6 mac ca:a7:86:7d:85:e6'
ExecStart=/usr/bin/bash -c '/usr/bin/ip link set enp98s0f2np2 vf 7 mac ca:a7:86:7d:85:e7'
ExecStart=/usr/bin/bash -c '/usr/bin/ip link set enp98s0f2np2 vf 8 mac ca:a7:86:7d:85:e8'
ExecStart=/usr/bin/bash -c '/usr/bin/ip link set enp98s0f2np2 vf 9 mac ca:a7:86:7d:85:e9'
ExecStart=/usr/bin/bash -c '/usr/bin/ip link set enp98s0f3np3 vf 0 mac da:a7:86:7d:85:e0'
ExecStart=/usr/bin/bash -c '/usr/bin/ip link set enp98s0f3np3 vf 1 mac da:a7:86:7d:85:e1'
ExecStart=/usr/bin/bash -c '/usr/bin/ip link set enp98s0f3np3 vf 2 mac da:a7:86:7d:85:e2'
ExecStart=/usr/bin/bash -c '/usr/bin/ip link set enp98s0f3np3 vf 3 mac da:a7:86:7d:85:e3'
ExecStart=/usr/bin/bash -c '/usr/bin/ip link set enp98s0f3np3 vf 4 mac da:a7:86:7d:85:e4'
ExecStart=/usr/bin/bash -c '/usr/bin/ip link set enp98s0f3np3 vf 5 mac da:a7:86:7d:85:e5'
ExecStart=/usr/bin/bash -c '/usr/bin/ip link set enp98s0f3np3 vf 6 mac da:a7:86:7d:85:e6'
ExecStart=/usr/bin/bash -c '/usr/bin/ip link set enp98s0f3np3 vf 7 mac da:a7:86:7d:85:e7'
ExecStart=/usr/bin/bash -c '/usr/bin/ip link set enp98s0f3np3 vf 8 mac da:a7:86:7d:85:e8'
ExecStart=/usr/bin/bash -c '/usr/bin/ip link set enp98s0f3np3 vf 9 mac da:a7:86:7d:85:e9'
ExecStart=/usr/bin/bash -c '/usr/bin/ip link set enp33s0f0np0 vf 0 mac ea:a7:86:7d:85:e0'
ExecStart=/usr/bin/bash -c '/usr/bin/ip link set enp33s0f0np0 vf 1 mac ea:a7:86:7d:85:e1'
ExecStart=/usr/bin/bash -c '/usr/bin/ip link set enp33s0f0np0 vf 2 mac ea:a7:86:7d:85:e2'
ExecStart=/usr/bin/bash -c '/usr/bin/ip link set enp33s0f0np0 vf 3 mac ea:a7:86:7d:85:e3'
ExecStart=/usr/bin/bash -c '/usr/bin/ip link set enp33s0f0np0 vf 4 mac ea:a7:86:7d:85:e4'
ExecStart=/usr/bin/bash -c '/usr/bin/ip link set enp33s0f0np0 vf 5 mac ea:a7:86:7d:85:e5'
ExecStart=/usr/bin/bash -c '/usr/bin/ip link set enp33s0f0np0 vf 6 mac ea:a7:86:7d:85:e6'
ExecStart=/usr/bin/bash -c '/usr/bin/ip link set enp33s0f0np0 vf 7 mac ea:a7:86:7d:85:e7'
ExecStart=/usr/bin/bash -c '/usr/bin/ip link set enp33s0f1np1 vf 0 mac fa:a7:86:7d:85:e0'
ExecStart=/usr/bin/bash -c '/usr/bin/ip link set enp33s0f1np1 vf 1 mac fa:a7:86:7d:85:e1'
ExecStart=/usr/bin/bash -c '/usr/bin/ip link set enp33s0f1np1 vf 2 mac fa:a7:86:7d:85:e2'
ExecStart=/usr/bin/bash -c '/usr/bin/ip link set enp33s0f1np1 vf 3 mac fa:a7:86:7d:85:e3'
ExecStart=/usr/bin/bash -c '/usr/bin/ip link set enp33s0f1np1 vf 4 mac fa:a7:86:7d:85:e4'
ExecStart=/usr/bin/bash -c '/usr/bin/ip link set enp33s0f1np1 vf 5 mac fa:a7:86:7d:85:e5'
ExecStart=/usr/bin/bash -c '/usr/bin/ip link set enp33s0f1np1 vf 6 mac fa:a7:86:7d:85:e6'
ExecStart=/usr/bin/bash -c '/usr/bin/ip link set enp33s0f1np1 vf 7 mac fa:a7:86:7d:85:e7'
# Detach VFs from host
ExecStart=/usr/bin/bash -c 'echo 0000:62:02.1 > /sys/bus/pci/devices/0000\\:62\\:02.1/driver/unbind'
ExecStart=/usr/bin/bash -c 'echo 0000:62:02.2 > /sys/bus/pci/devices/0000\\:62\\:02.2/driver/unbind'
ExecStart=/usr/bin/bash -c 'echo 0000:62:02.3 > /sys/bus/pci/devices/0000\\:62\\:02.3/driver/unbind'
ExecStart=/usr/bin/bash -c 'echo 0000:62:02.4 > /sys/bus/pci/devices/0000\\:62\\:02.4/driver/unbind'
ExecStart=/usr/bin/bash -c 'echo 0000:62:02.5 > /sys/bus/pci/devices/0000\\:62\\:02.5/driver/unbind'
ExecStart=/usr/bin/bash -c 'echo 0000:62:02.6 > /sys/bus/pci/devices/0000\\:62\\:02.6/driver/unbind'
ExecStart=/usr/bin/bash -c 'echo 0000:62:02.7 > /sys/bus/pci/devices/0000\\:62\\:02.7/driver/unbind'
ExecStart=/usr/bin/bash -c 'echo 0000:62:03.0 > /sys/bus/pci/devices/0000\\:62\\:03.0/driver/unbind'
ExecStart=/usr/bin/bash -c 'echo 0000:62:03.1 > /sys/bus/pci/devices/0000\\:62\\:03.1/driver/unbind'
ExecStart=/usr/bin/bash -c 'echo 0000:62:06.1 > /sys/bus/pci/devices/0000\\:62\\:06.1/driver/unbind'
ExecStart=/usr/bin/bash -c 'echo 0000:62:06.2 > /sys/bus/pci/devices/0000\\:62\\:06.2/driver/unbind'
ExecStart=/usr/bin/bash -c 'echo 0000:62:06.3 > /sys/bus/pci/devices/0000\\:62\\:06.3/driver/unbind'
ExecStart=/usr/bin/bash -c 'echo 0000:62:06.4 > /sys/bus/pci/devices/0000\\:62\\:06.4/driver/unbind'
ExecStart=/usr/bin/bash -c 'echo 0000:62:06.5 > /sys/bus/pci/devices/0000\\:62\\:06.5/driver/unbind'
ExecStart=/usr/bin/bash -c 'echo 0000:62:06.6 > /sys/bus/pci/devices/0000\\:62\\:06.6/driver/unbind'
ExecStart=/usr/bin/bash -c 'echo 0000:62:06.7 > /sys/bus/pci/devices/0000\\:62\\:06.7/driver/unbind'
ExecStart=/usr/bin/bash -c 'echo 0000:62:07.0 > /sys/bus/pci/devices/0000\\:62\\:07.0/driver/unbind'
ExecStart=/usr/bin/bash -c 'echo 0000:62:07.1 > /sys/bus/pci/devices/0000\\:62\\:07.1/driver/unbind'
ExecStart=/usr/bin/bash -c 'echo 0000:62:0a.1 > /sys/bus/pci/devices/0000\\:62\\:0a.1/driver/unbind'
ExecStart=/usr/bin/bash -c 'echo 0000:62:0a.2 > /sys/bus/pci/devices/0000\\:62\\:0a.2/driver/unbind'
ExecStart=/usr/bin/bash -c 'echo 0000:62:0a.3 > /sys/bus/pci/devices/0000\\:62\\:0a.3/driver/unbind'
ExecStart=/usr/bin/bash -c 'echo 0000:62:0a.4 > /sys/bus/pci/devices/0000\\:62\\:0a.4/driver/unbind'
ExecStart=/usr/bin/bash -c 'echo 0000:62:0a.5 > /sys/bus/pci/devices/0000\\:62\\:0a.5/driver/unbind'
ExecStart=/usr/bin/bash -c 'echo 0000:62:0a.6 > /sys/bus/pci/devices/0000\\:62\\:0a.6/driver/unbind'
ExecStart=/usr/bin/bash -c 'echo 0000:62:0a.7 > /sys/bus/pci/devices/0000\\:62\\:0a.7/driver/unbind'
ExecStart=/usr/bin/bash -c 'echo 0000:62:0b.0 > /sys/bus/pci/devices/0000\\:62\\:0b.0/driver/unbind'
ExecStart=/usr/bin/bash -c 'echo 0000:62:0b.1 > /sys/bus/pci/devices/0000\\:62\\:0b.1/driver/unbind'
ExecStart=/usr/bin/bash -c 'echo 0000:62:0e.1 > /sys/bus/pci/devices/0000\\:62\\:0e.1/driver/unbind'
ExecStart=/usr/bin/bash -c 'echo 0000:62:0e.2 > /sys/bus/pci/devices/0000\\:62\\:0e.2/driver/unbind'
ExecStart=/usr/bin/bash -c 'echo 0000:62:0e.3 > /sys/bus/pci/devices/0000\\:62\\:0e.3/driver/unbind'
ExecStart=/usr/bin/bash -c 'echo 0000:62:0e.4 > /sys/bus/pci/devices/0000\\:62\\:0e.4/driver/unbind'
ExecStart=/usr/bin/bash -c 'echo 0000:62:0e.5 > /sys/bus/pci/devices/0000\\:62\\:0e.5/driver/unbind'
ExecStart=/usr/bin/bash -c 'echo 0000:62:0e.6 > /sys/bus/pci/devices/0000\\:62\\:0e.6/driver/unbind'
ExecStart=/usr/bin/bash -c 'echo 0000:62:0e.7 > /sys/bus/pci/devices/0000\\:62\\:0e.7/driver/unbind'
ExecStart=/usr/bin/bash -c 'echo 0000:62:0f.0 > /sys/bus/pci/devices/0000\\:62\\:0f.0/driver/unbind'
ExecStart=/usr/bin/bash -c 'echo 0000:62:0f.1 > /sys/bus/pci/devices/0000\\:62\\:0f.1/driver/unbind'
ExecStart=/usr/bin/bash -c 'echo 0000:21:00.3 > /sys/bus/pci/devices/0000\\:21\\:00.3/driver/unbind'
ExecStart=/usr/bin/bash -c 'echo 0000:21:00.4 > /sys/bus/pci/devices/0000\\:21\\:00.4/driver/unbind'
ExecStart=/usr/bin/bash -c 'echo 0000:21:00.5 > /sys/bus/pci/devices/0000\\:21\\:00.5/driver/unbind'
ExecStart=/usr/bin/bash -c 'echo 0000:21:00.6 > /sys/bus/pci/devices/0000\\:21\\:00.6/driver/unbind'
ExecStart=/usr/bin/bash -c 'echo 0000:21:00.7 > /sys/bus/pci/devices/0000\\:21\\:00.7/driver/unbind'
ExecStart=/usr/bin/bash -c 'echo 0000:21:01.0 > /sys/bus/pci/devices/0000\\:21\\:01.0/driver/unbind'
ExecStart=/usr/bin/bash -c 'echo 0000:21:01.1 > /sys/bus/pci/devices/0000\\:21\\:01.1/driver/unbind'
ExecStart=/usr/bin/bash -c 'echo 0000:21:04.3 > /sys/bus/pci/devices/0000\\:21\\:04.3/driver/unbind'
ExecStart=/usr/bin/bash -c 'echo 0000:21:04.4 > /sys/bus/pci/devices/0000\\:21\\:04.4/driver/unbind'
ExecStart=/usr/bin/bash -c 'echo 0000:21:04.5 > /sys/bus/pci/devices/0000\\:21\\:04.5/driver/unbind'
ExecStart=/usr/bin/bash -c 'echo 0000:21:04.6 > /sys/bus/pci/devices/0000\\:21\\:04.6/driver/unbind'
ExecStart=/usr/bin/bash -c 'echo 0000:21:04.7 > /sys/bus/pci/devices/0000\\:21\\:04.7/driver/unbind'
ExecStart=/usr/bin/bash -c 'echo 0000:21:05.0 > /sys/bus/pci/devices/0000\\:21\\:05.0/driver/unbind'
ExecStart=/usr/bin/bash -c 'echo 0000:21:05.1 > /sys/bus/pci/devices/0000\\:21\\:05.1/driver/unbind'
# List new VFs
ExecStart=/usr/bin/lspci -D -d 8086:154c
ExecStart=/usr/bin/lspci -D -d 15b3:101a
# Destroy VFs
ExecStop=/usr/bin/bash -c '/usr/bin/echo 0 > /sys/class/net/enp98s0f0np0/device/sriov_numvfs'
ExecStop=/usr/bin/bash -c '/usr/bin/echo 0 > /sys/class/net/enp98s0f1np1/device/sriov_numvfs'
ExecStop=/usr/bin/bash -c '/usr/bin/echo 0 > /sys/class/net/enp98s0f2np2/device/sriov_numvfs'
ExecStop=/usr/bin/bash -c '/usr/bin/echo 0 > /sys/class/net/enp98s0f3np3/device/sriov_numvfs'
ExecStop=/usr/bin/bash -c '/usr/bin/echo 0 > /sys/class/net/enp33s0f0np0/device/sriov_numvfs'
ExecStop=/usr/bin/bash -c '/usr/bin/echo 0 > /sys/class/net/enp33s0f1np1/device/sriov_numvfs'
# Reload NIC VFs
ExecReload=/usr/bin/bash -c '/usr/bin/echo 0 > /sys/class/net/enp98s0f0np0/device/sriov_numvfs'
ExecReload=/usr/bin/bash -c '/usr/bin/echo 0 > /sys/class/net/enp98s0f1np1/device/sriov_numvfs'
ExecReload=/usr/bin/bash -c '/usr/bin/echo 0 > /sys/class/net/enp98s0f2np2/device/sriov_numvfs'
ExecReload=/usr/bin/bash -c '/usr/bin/echo 0 > /sys/class/net/enp98s0f3np3/device/sriov_numvfs'
ExecReload=/usr/bin/bash -c '/usr/bin/echo 0 > /sys/class/net/enp33s0f0np0/device/sriov_numvfs'
ExecReload=/usr/bin/bash -c '/usr/bin/echo 0 > /sys/class/net/enp33s0f1np1/device/sriov_numvfs'
ExecReload=/usr/bin/bash -c '/usr/bin/echo 10 > /sys/class/net/enp98s0f0np0/device/sriov_numvfs'
ExecReload=/usr/bin/bash -c '/usr/bin/echo 10 > /sys/class/net/enp98s0f1np1/device/sriov_numvfs'
ExecReload=/usr/bin/bash -c '/usr/bin/echo 10 > /sys/class/net/enp98s0f2np2/device/sriov_numvfs'
ExecReload=/usr/bin/bash -c '/usr/bin/echo 10 > /sys/class/net/enp98s0f3np3/device/sriov_numvfs'
ExecReload=/usr/bin/bash -c '/usr/bin/echo 8 > /sys/class/net/enp33s0f0np0/device/sriov_numvfs'
ExecReload=/usr/bin/bash -c '/usr/bin/echo 8 > /sys/class/net/enp33s0f1np1/device/sriov_numvfs'
ExecReload=/usr/bin/bash -c '/usr/bin/ip link set enp98s0f0np0 vf 0 mac aa:a7:86:7d:85:e0'
ExecReload=/usr/bin/bash -c '/usr/bin/ip link set enp98s0f0np0 vf 1 mac aa:a7:86:7d:85:e1'
ExecReload=/usr/bin/bash -c '/usr/bin/ip link set enp98s0f0np0 vf 2 mac aa:a7:86:7d:85:e2'
ExecReload=/usr/bin/bash -c '/usr/bin/ip link set enp98s0f0np0 vf 3 mac aa:a7:86:7d:85:e3'
ExecReload=/usr/bin/bash -c '/usr/bin/ip link set enp98s0f0np0 vf 4 mac aa:a7:86:7d:85:e4'
ExecReload=/usr/bin/bash -c '/usr/bin/ip link set enp98s0f0np0 vf 5 mac aa:a7:86:7d:85:e5'
ExecReload=/usr/bin/bash -c '/usr/bin/ip link set enp98s0f0np0 vf 6 mac aa:a7:86:7d:85:e6'
ExecReload=/usr/bin/bash -c '/usr/bin/ip link set enp98s0f0np0 vf 7 mac aa:a7:86:7d:85:e7'
ExecReload=/usr/bin/bash -c '/usr/bin/ip link set enp98s0f0np0 vf 8 mac aa:a7:86:7d:85:e8'
ExecReload=/usr/bin/bash -c '/usr/bin/ip link set enp98s0f0np0 vf 9 mac aa:a7:86:7d:85:e9'
ExecReload=/usr/bin/bash -c '/usr/bin/ip link set enp98s0f1np1 vf 0 mac ba:a7:86:7d:85:e0'
ExecReload=/usr/bin/bash -c '/usr/bin/ip link set enp98s0f1np1 vf 1 mac ba:a7:86:7d:85:e1'
ExecReload=/usr/bin/bash -c '/usr/bin/ip link set enp98s0f1np1 vf 2 mac ba:a7:86:7d:85:e2'
ExecReload=/usr/bin/bash -c '/usr/bin/ip link set enp98s0f1np1 vf 3 mac ba:a7:86:7d:85:e3'
ExecReload=/usr/bin/bash -c '/usr/bin/ip link set enp98s0f1np1 vf 4 mac ba:a7:86:7d:85:e4'
ExecReload=/usr/bin/bash -c '/usr/bin/ip link set enp98s0f1np1 vf 5 mac ba:a7:86:7d:85:e5'
ExecReload=/usr/bin/bash -c '/usr/bin/ip link set enp98s0f1np1 vf 6 mac ba:a7:86:7d:85:e6'
ExecReload=/usr/bin/bash -c '/usr/bin/ip link set enp98s0f1np1 vf 7 mac ba:a7:86:7d:85:e7'
ExecReload=/usr/bin/bash -c '/usr/bin/ip link set enp98s0f1np1 vf 8 mac ba:a7:86:7d:85:e8'
ExecReload=/usr/bin/bash -c '/usr/bin/ip link set enp98s0f1np1 vf 9 mac ba:a7:86:7d:85:e9'
ExecReload=/usr/bin/bash -c '/usr/bin/ip link set enp98s0f2np2 vf 0 mac ca:a7:86:7d:85:e0'
ExecReload=/usr/bin/bash -c '/usr/bin/ip link set enp98s0f2np2 vf 1 mac ca:a7:86:7d:85:e1'
ExecReload=/usr/bin/bash -c '/usr/bin/ip link set enp98s0f2np2 vf 2 mac ca:a7:86:7d:85:e2'
ExecReload=/usr/bin/bash -c '/usr/bin/ip link set enp98s0f2np2 vf 3 mac ca:a7:86:7d:85:e3'
ExecReload=/usr/bin/bash -c '/usr/bin/ip link set enp98s0f2np2 vf 4 mac ca:a7:86:7d:85:e4'
ExecReload=/usr/bin/bash -c '/usr/bin/ip link set enp98s0f2np2 vf 5 mac ca:a7:86:7d:85:e5'
ExecReload=/usr/bin/bash -c '/usr/bin/ip link set enp98s0f2np2 vf 6 mac ca:a7:86:7d:85:e6'
ExecReload=/usr/bin/bash -c '/usr/bin/ip link set enp98s0f2np2 vf 7 mac ca:a7:86:7d:85:e7'
ExecReload=/usr/bin/bash -c '/usr/bin/ip link set enp98s0f2np2 vf 8 mac ca:a7:86:7d:85:e8'
ExecReload=/usr/bin/bash -c '/usr/bin/ip link set enp98s0f2np2 vf 9 mac ca:a7:86:7d:85:e9'
ExecReload=/usr/bin/bash -c '/usr/bin/ip link set enp98s0f3np3 vf 0 mac da:a7:86:7d:85:e0'
ExecReload=/usr/bin/bash -c '/usr/bin/ip link set enp98s0f3np3 vf 1 mac da:a7:86:7d:85:e1'
ExecReload=/usr/bin/bash -c '/usr/bin/ip link set enp98s0f3np3 vf 2 mac da:a7:86:7d:85:e2'
ExecReload=/usr/bin/bash -c '/usr/bin/ip link set enp98s0f3np3 vf 3 mac da:a7:86:7d:85:e3'
ExecReload=/usr/bin/bash -c '/usr/bin/ip link set enp98s0f3np3 vf 4 mac da:a7:86:7d:85:e4'
ExecReload=/usr/bin/bash -c '/usr/bin/ip link set enp98s0f3np3 vf 5 mac da:a7:86:7d:85:e5'
ExecReload=/usr/bin/bash -c '/usr/bin/ip link set enp98s0f3np3 vf 6 mac da:a7:86:7d:85:e6'
ExecReload=/usr/bin/bash -c '/usr/bin/ip link set enp98s0f3np3 vf 7 mac da:a7:86:7d:85:e7'
ExecReload=/usr/bin/bash -c '/usr/bin/ip link set enp98s0f3np3 vf 8 mac da:a7:86:7d:85:e8'
ExecReload=/usr/bin/bash -c '/usr/bin/ip link set enp98s0f3np3 vf 9 mac da:a7:86:7d:85:e9'
ExecReload=/usr/bin/bash -c '/usr/bin/ip link set enp33s0f0np0 vf 0 mac ea:a7:86:7d:85:e0'
ExecReload=/usr/bin/bash -c '/usr/bin/ip link set enp33s0f0np0 vf 1 mac ea:a7:86:7d:85:e1'
ExecReload=/usr/bin/bash -c '/usr/bin/ip link set enp33s0f0np0 vf 2 mac ea:a7:86:7d:85:e2'
ExecReload=/usr/bin/bash -c '/usr/bin/ip link set enp33s0f0np0 vf 3 mac ea:a7:86:7d:85:e3'
ExecReload=/usr/bin/bash -c '/usr/bin/ip link set enp33s0f0np0 vf 4 mac ea:a7:86:7d:85:e4'
ExecReload=/usr/bin/bash -c '/usr/bin/ip link set enp33s0f0np0 vf 5 mac ea:a7:86:7d:85:e5'
ExecReload=/usr/bin/bash -c '/usr/bin/ip link set enp33s0f0np0 vf 6 mac ea:a7:86:7d:85:e6'
ExecReload=/usr/bin/bash -c '/usr/bin/ip link set enp33s0f0np0 vf 7 mac ea:a7:86:7d:85:e7'
ExecReload=/usr/bin/bash -c '/usr/bin/ip link set enp33s0f1np1 vf 0 mac fa:a7:86:7d:85:e0'
ExecReload=/usr/bin/bash -c '/usr/bin/ip link set enp33s0f1np1 vf 1 mac fa:a7:86:7d:85:e1'
ExecReload=/usr/bin/bash -c '/usr/bin/ip link set enp33s0f1np1 vf 2 mac fa:a7:86:7d:85:e2'
ExecReload=/usr/bin/bash -c '/usr/bin/ip link set enp33s0f1np1 vf 3 mac fa:a7:86:7d:85:e3'
ExecReload=/usr/bin/bash -c '/usr/bin/ip link set enp33s0f1np1 vf 4 mac fa:a7:86:7d:85:e4'
ExecReload=/usr/bin/bash -c '/usr/bin/ip link set enp33s0f1np1 vf 5 mac fa:a7:86:7d:85:e5'
ExecReload=/usr/bin/bash -c '/usr/bin/ip link set enp33s0f1np1 vf 6 mac fa:a7:86:7d:85:e6'
ExecReload=/usr/bin/bash -c '/usr/bin/ip link set enp33s0f1np1 vf 7 mac fa:a7:86:7d:85:e7'
ExecReload=/usr/bin/bash -c 'echo 0000:62:02.1 > /sys/bus/pci/devices/0000\\:62\\:02.1/driver/unbind'
ExecReload=/usr/bin/bash -c 'echo 0000:62:02.2 > /sys/bus/pci/devices/0000\\:62\\:02.2/driver/unbind'
ExecReload=/usr/bin/bash -c 'echo 0000:62:02.3 > /sys/bus/pci/devices/0000\\:62\\:02.3/driver/unbind'
ExecReload=/usr/bin/bash -c 'echo 0000:62:02.4 > /sys/bus/pci/devices/0000\\:62\\:02.4/driver/unbind'
ExecReload=/usr/bin/bash -c 'echo 0000:62:02.5 > /sys/bus/pci/devices/0000\\:62\\:02.5/driver/unbind'
ExecReload=/usr/bin/bash -c 'echo 0000:62:02.6 > /sys/bus/pci/devices/0000\\:62\\:02.6/driver/unbind'
ExecReload=/usr/bin/bash -c 'echo 0000:62:02.7 > /sys/bus/pci/devices/0000\\:62\\:02.7/driver/unbind'
ExecReload=/usr/bin/bash -c 'echo 0000:62:03.0 > /sys/bus/pci/devices/0000\\:62\\:03.0/driver/unbind'
ExecReload=/usr/bin/bash -c 'echo 0000:62:03.1 > /sys/bus/pci/devices/0000\\:62\\:03.1/driver/unbind'
ExecReload=/usr/bin/bash -c 'echo 0000:62:06.1 > /sys/bus/pci/devices/0000\\:62\\:06.1/driver/unbind'
ExecReload=/usr/bin/bash -c 'echo 0000:62:06.2 > /sys/bus/pci/devices/0000\\:62\\:06.2/driver/unbind'
ExecReload=/usr/bin/bash -c 'echo 0000:62:06.3 > /sys/bus/pci/devices/0000\\:62\\:06.3/driver/unbind'
ExecReload=/usr/bin/bash -c 'echo 0000:62:06.4 > /sys/bus/pci/devices/0000\\:62\\:06.4/driver/unbind'
ExecReload=/usr/bin/bash -c 'echo 0000:62:06.5 > /sys/bus/pci/devices/0000\\:62\\:06.5/driver/unbind'
ExecReload=/usr/bin/bash -c 'echo 0000:62:06.6 > /sys/bus/pci/devices/0000\\:62\\:06.6/driver/unbind'
ExecReload=/usr/bin/bash -c 'echo 0000:62:06.7 > /sys/bus/pci/devices/0000\\:62\\:06.7/driver/unbind'
ExecReload=/usr/bin/bash -c 'echo 0000:62:07.0 > /sys/bus/pci/devices/0000\\:62\\:07.0/driver/unbind'
ExecReload=/usr/bin/bash -c 'echo 0000:62:07.1 > /sys/bus/pci/devices/0000\\:62\\:07.1/driver/unbind'
ExecReload=/usr/bin/bash -c 'echo 0000:62:0a.1 > /sys/bus/pci/devices/0000\\:62\\:0a.1/driver/unbind'
ExecReload=/usr/bin/bash -c 'echo 0000:62:0a.2 > /sys/bus/pci/devices/0000\\:62\\:0a.2/driver/unbind'
ExecReload=/usr/bin/bash -c 'echo 0000:62:0a.3 > /sys/bus/pci/devices/0000\\:62\\:0a.3/driver/unbind'
ExecReload=/usr/bin/bash -c 'echo 0000:62:0a.4 > /sys/bus/pci/devices/0000\\:62\\:0a.4/driver/unbind'
ExecReload=/usr/bin/bash -c 'echo 0000:62:0a.5 > /sys/bus/pci/devices/0000\\:62\\:0a.5/driver/unbind'
ExecReload=/usr/bin/bash -c 'echo 0000:62:0a.6 > /sys/bus/pci/devices/0000\\:62\\:0a.6/driver/unbind'
ExecReload=/usr/bin/bash -c 'echo 0000:62:0a.7 > /sys/bus/pci/devices/0000\\:62\\:0a.7/driver/unbind'
ExecReload=/usr/bin/bash -c 'echo 0000:62:0b.0 > /sys/bus/pci/devices/0000\\:62\\:0b.0/driver/unbind'
ExecReload=/usr/bin/bash -c 'echo 0000:62:0b.1 > /sys/bus/pci/devices/0000\\:62\\:0b.1/driver/unbind'
ExecReload=/usr/bin/bash -c 'echo 0000:62:0e.1 > /sys/bus/pci/devices/0000\\:62\\:0e.1/driver/unbind'
ExecReload=/usr/bin/bash -c 'echo 0000:62:0e.2 > /sys/bus/pci/devices/0000\\:62\\:0e.2/driver/unbind'
ExecReload=/usr/bin/bash -c 'echo 0000:62:0e.3 > /sys/bus/pci/devices/0000\\:62\\:0e.3/driver/unbind'
ExecReload=/usr/bin/bash -c 'echo 0000:62:0e.4 > /sys/bus/pci/devices/0000\\:62\\:0e.4/driver/unbind'
ExecReload=/usr/bin/bash -c 'echo 0000:62:0e.5 > /sys/bus/pci/devices/0000\\:62\\:0e.5/driver/unbind'
ExecReload=/usr/bin/bash -c 'echo 0000:62:0e.6 > /sys/bus/pci/devices/0000\\:62\\:0e.6/driver/unbind'
ExecReload=/usr/bin/bash -c 'echo 0000:62:0e.7 > /sys/bus/pci/devices/0000\\:62\\:0e.7/driver/unbind'
ExecReload=/usr/bin/bash -c 'echo 0000:62:0f.0 > /sys/bus/pci/devices/0000\\:62\\:0f.0/driver/unbind'
ExecReload=/usr/bin/bash -c 'echo 0000:62:0f.1 > /sys/bus/pci/devices/0000\\:62\\:0f.1/driver/unbind'
ExecReload=/usr/bin/bash -c 'echo 0000:21:00.3 > /sys/bus/pci/devices/0000\\:21\\:00.3/driver/unbind'
ExecReload=/usr/bin/bash -c 'echo 0000:21:00.4 > /sys/bus/pci/devices/0000\\:21\\:00.4/driver/unbind'
ExecReload=/usr/bin/bash -c 'echo 0000:21:00.5 > /sys/bus/pci/devices/0000\\:21\\:00.5/driver/unbind'
ExecReload=/usr/bin/bash -c 'echo 0000:21:00.6 > /sys/bus/pci/devices/0000\\:21\\:00.6/driver/unbind'
ExecReload=/usr/bin/bash -c 'echo 0000:21:00.7 > /sys/bus/pci/devices/0000\\:21\\:00.7/driver/unbind'
ExecReload=/usr/bin/bash -c 'echo 0000:21:01.0 > /sys/bus/pci/devices/0000\\:21\\:01.0/driver/unbind'
ExecReload=/usr/bin/bash -c 'echo 0000:21:01.1 > /sys/bus/pci/devices/0000\\:21\\:01.1/driver/unbind'
ExecReload=/usr/bin/bash -c 'echo 0000:21:04.3 > /sys/bus/pci/devices/0000\\:21\\:04.3/driver/unbind'
ExecReload=/usr/bin/bash -c 'echo 0000:21:04.4 > /sys/bus/pci/devices/0000\\:21\\:04.4/driver/unbind'
ExecReload=/usr/bin/bash -c 'echo 0000:21:04.5 > /sys/bus/pci/devices/0000\\:21\\:04.5/driver/unbind'
ExecReload=/usr/bin/bash -c 'echo 0000:21:04.6 > /sys/bus/pci/devices/0000\\:21\\:04.6/driver/unbind'
ExecReload=/usr/bin/bash -c 'echo 0000:21:04.7 > /sys/bus/pci/devices/0000\\:21\\:04.7/driver/unbind'
ExecReload=/usr/bin/bash -c 'echo 0000:21:05.0 > /sys/bus/pci/devices/0000\\:21\\:05.0/driver/unbind'
ExecReload=/usr/bin/bash -c 'echo 0000:21:05.1 > /sys/bus/pci/devices/0000\\:21\\:05.1/driver/unbind'
ExecReload=/usr/bin/lspci -D -d 8086:154c
ExecReload=/usr/bin/lspci -D -d 15b3:101a
[Install]
WantedBy=multi-user.target
This is the PVE network screen in proxmox:
This is the IP A output:
1: lo: <LOOPBACK,UP,LOWER_UP> mtu 65536 qdisc noqueue state UNKNOWN group default qlen 1000
link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00
inet 127.0.0.1/8 scope host lo
valid_lft forever preferred_lft forever
inet6 ::1/128 scope host noprefixroute
valid_lft forever preferred_lft forever
2: eno1: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc mq master vmbr0 state UP group default qlen 1000
link/ether 3c:ec:ef:6d:d6:9c brd ff:ff:ff:ff:ff:ff
altname enp4s0
3: eno2: <BROADCAST,MULTICAST> mtu 1500 qdisc noop state DOWN group default qlen 1000
link/ether 3c:ec:ef:6d:d6:9d brd ff:ff:ff:ff:ff:ff
altname enp5s0
4: enp98s0f0np0: <BROADCAST,MULTICAST> mtu 1500 qdisc noop state DOWN group default qlen 1000
link/ether 00:e0:ed:9a:0f:14 brd ff:ff:ff:ff:ff:ff
5: enp98s0f1np1: <BROADCAST,MULTICAST> mtu 1500 qdisc noop state DOWN group default qlen 1000
link/ether 00:e0:ed:9a:0f:15 brd ff:ff:ff:ff:ff:ff
6: enp98s0f2np2: <BROADCAST,MULTICAST> mtu 1500 qdisc noop state DOWN group default qlen 1000
link/ether 00:e0:ed:9a:0f:16 brd ff:ff:ff:ff:ff:ff
7: enp98s0f3np3: <BROADCAST,MULTICAST> mtu 1500 qdisc noop state DOWN group default qlen 1000
link/ether 00:e0:ed:9a:0f:17 brd ff:ff:ff:ff:ff:ff
8: enp33s0f0np0: <BROADCAST,MULTICAST> mtu 1500 qdisc noop state DOWN group default qlen 1000
link/ether b8:ce:f6:cf:93:d8 brd ff:ff:ff:ff:ff:ff
9: enp33s0f1np1: <BROADCAST,MULTICAST> mtu 1500 qdisc noop state DOWN group default qlen 1000
link/ether b8:ce:f6:cf:93:d9 brd ff:ff:ff:ff:ff:ff
10: vmbr0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc noqueue state UP group default qlen 1000
link/ether 3c:ec:ef:6d:d6:9c brd ff:ff:ff:ff:ff:ff
inet 10.100.10.20/24 scope global vmbr0
valid_lft forever preferred_lft forever
inet6 fe80::3eec:efff:fe6d:d69c/64 scope link
valid_lft forever preferred_lft forever
12: enp98s0f0v0: <BROADCAST,MULTICAST> mtu 1500 qdisc noop state DOWN group default qlen 1000
link/ether aa:a7:86:7d:85:e0 brd ff:ff:ff:ff:ff:ff
26: enp98s0f1v0: <BROADCAST,MULTICAST> mtu 1500 qdisc noop state DOWN group default qlen 1000
link/ether ba:a7:86:7d:85:e0 brd ff:ff:ff:ff:ff:ff
31: enp33s0f0v0: <BROADCAST,MULTICAST> mtu 1500 qdisc noop state DOWN group default qlen 1000
link/ether 42:fa:7e:91:0e:9e brd ff:ff:ff:ff:ff:ff
34: enp98s0f2v0: <BROADCAST,MULTICAST> mtu 1500 qdisc noop state DOWN group default qlen 1000
link/ether ca:a7:86:7d:85:e0 brd ff:ff:ff:ff:ff:ff
42: enp98s0f3v0: <BROADCAST,MULTICAST> mtu 1500 qdisc noop state DOWN group default qlen 1000
link/ether da:a7:86:7d:85:e0 brd ff:ff:ff:ff:ff:ff
59: enp33s0f1v0: <BROADCAST,MULTICAST> mtu 1500 qdisc noop state DOWN group default qlen 1000
link/ether 0e:3f:e7:70:4a:6e brd ff:ff:ff:ff:ff:ff
It seems strings setting the mac addresses for the VF on the Mellanox isn't right. Because both mac addresses listed from IP A commend went rogue on the VF's for the Mellanox cards... But the output using IP Link show Dev command outputs correctly... Anyone care to jump in here and educate me ?
I left the first VF's of all the root devices per the example (Mellanox PCI 21.04.2 & 21.00.2) out of the reload.
root@pve00:~# ip link show dev enp33s0f0np0
8: enp33s0f0np0: <BROADCAST,MULTICAST> mtu 1500 qdisc noop state DOWN mode DEFAULT group default qlen 1000
link/ether b8:ce:f6:cf:93:d8 brd ff:ff:ff:ff:ff:ff
vf 0 link/ether ea:a7:86:7d:85:e0 brd ff:ff:ff:ff:ff:ff, spoof checking off, link-state auto, trust off, query_rss off
vf 1 link/ether ea:a7:86:7d:85:e1 brd ff:ff:ff:ff:ff:ff, spoof checking off, link-state auto, trust off, query_rss off
vf 2 link/ether ea:a7:86:7d:85:e2 brd ff:ff:ff:ff:ff:ff, spoof checking off, link-state auto, trust off, query_rss off
vf 3 link/ether ea:a7:86:7d:85:e3 brd ff:ff:ff:ff:ff:ff, spoof checking off, link-state auto, trust off, query_rss off
vf 4 link/ether ea:a7:86:7d:85:e4 brd ff:ff:ff:ff:ff:ff, spoof checking off, link-state auto, trust off, query_rss off
vf 5 link/ether ea:a7:86:7d:85:e5 brd ff:ff:ff:ff:ff:ff, spoof checking off, link-state auto, trust off, query_rss off
vf 6 link/ether ea:a7:86:7d:85:e6 brd ff:ff:ff:ff:ff:ff, spoof checking off, link-state auto, trust off, query_rss off
vf 7 link/ether ea:a7:86:7d:85:e7 brd ff:ff:ff:ff:ff:ff, spoof checking off, link-state auto, trust off, query_rss off
root@pve00:~# ip link show dev enp33s0f1np1
9: enp33s0f1np1: <BROADCAST,MULTICAST> mtu 1500 qdisc noop state DOWN mode DEFAULT group default qlen 1000
link/ether b8:ce:f6:cf:93:d9 brd ff:ff:ff:ff:ff:ff
vf 0 link/ether fa:a7:86:7d:85:e0 brd ff:ff:ff:ff:ff:ff, spoof checking off, link-state auto, trust off, query_rss off
vf 1 link/ether fa:a7:86:7d:85:e1 brd ff:ff:ff:ff:ff:ff, spoof checking off, link-state auto, trust off, query_rss off
vf 2 link/ether fa:a7:86:7d:85:e2 brd ff:ff:ff:ff:ff:ff, spoof checking off, link-state auto, trust off, query_rss off
vf 3 link/ether fa:a7:86:7d:85:e3 brd ff:ff:ff:ff:ff:ff, spoof checking off, link-state auto, trust off, query_rss off
vf 4 link/ether fa:a7:86:7d:85:e4 brd ff:ff:ff:ff:ff:ff, spoof checking off, link-state auto, trust off, query_rss off
vf 5 link/ether fa:a7:86:7d:85:e5 brd ff:ff:ff:ff:ff:ff, spoof checking off, link-state auto, trust off, query_rss off
vf 6 link/ether fa:a7:86:7d:85:e6 brd ff:ff:ff:ff:ff:ff, spoof checking off, link-state auto, trust off, query_rss off
vf 7 link/ether fa:a7:86:7d:85:e7 brd ff:ff:ff:ff:ff:ff, spoof checking off, link-state auto, trust off, query_rss off
Let me know if you have any ideas. My google foo didn't pop anything up.