# lshw -short -c net
H/W path          Device          Class          Description
============================================================
/0/102/0          ens1            network        MT27800 Family [ConnectX-5]
/0/102/0.1        ens1v0          network        MT27800 Family [ConnectX-5 Virtual Function]
/0/102/0.2        ens1v1          network        MT27800 Family [ConnectX-5 Virtual Function]
/0/102/0.3        ens1v2          network        MT27800 Family [ConnectX-5 Virtual Function]
/0/102/0.4        ens1v3          network        MT27800 Family [ConnectX-5 Virtual Function]


# ip addr | grep ens1 -A 1
2: ens1: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 9000 qdisc mq state UP group default qlen 1000
    link/ether 04:3f:72:cf:d4:02 brd ff:ff:ff:ff:ff:ff
7: ens1v0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 9000 qdisc mq state UP group default qlen 1000
    link/ether 86:43:85:2b:3c:20 brd ff:ff:ff:ff:ff:ff
    inet 134.75.xxx.yyy/24 brd 134.75.207.255 scope global noprefixroute ens1v0
20: ens1v3: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc mq state UP group default qlen 1000
    link/ether ae:53:96:bb:07:98 brd ff:ff:ff:ff:ff:ff
23: ens1v2: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc mq state UP group default qlen 1000
    link/ether ee:a3:62:92:f5:83 brd ff:ff:ff:ff:ff:ff
24: ens1v1: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc mq state UP group default qlen 1000
    link/ether a2:1b:4a:b5:d7:72 brd ff:ff:ff:ff:ff:ff


# lspci | grep -i Mellanox
0000:3b:00.0 Ethernet controller: Mellanox Technologies MT27800 Family [ConnectX-5]
0000:3b:00.1 Ethernet controller: Mellanox Technologies MT27800 Family [ConnectX-5 Virtual Function]
0000:3b:00.2 Ethernet controller: Mellanox Technologies MT27800 Family [ConnectX-5 Virtual Function]
0000:3b:00.3 Ethernet controller: Mellanox Technologies MT27800 Family [ConnectX-5 Virtual Function]
0000:3b:00.4 Ethernet controller: Mellanox Technologies MT27800 Family [ConnectX-5 Virtual Function]



[Unit]
Description=Script to enable SR-IOV on boot

[Service]
Type=oneshot
ExecStart=/usr/bin/bash -c '/usr/bin/echo 4 > /sys/class/net/ens1/device/sriov_numvfs'
ExecStart=/usr/bin/bash -c 'echo 0000:3b:00.2 > /sys/bus/pci/drivers/mlx5_core/unbind'
ExecStart=/usr/bin/bash -c 'echo 0000:3b:00.3 > /sys/bus/pci/drivers/mlx5_core/unbind'
ExecStart=/usr/bin/bash -c 'echo 0000:3b:00.4 > /sys/bus/pci/drivers/mlx5_core/unbind'

[Install]
WantedBy=multi-user.target



# systemctl enable sriov-vf.service