change ethernet RJ-45 to SFP+ fibre on Proxmox server

Tomm

New Member
Jul 9, 2025
20
2
3
Hello,



When I installed my Proxmox server, I used the first ethernet port, named

‘enp101s0’.

______________________________________________________________
My /etc/network/interfaces look like

auto lo

iface lo inet loopback

iface enp101s0 inet manual

auto vmbr0

iface vmbr0 inet static

address 192.168.8.200/24

gateway 192.168.8.1

bridge-ports enp101s0

bridge-stp off

bridge-fd 0

iface enp100s0f0np0 inet manual

iface enp102s0 inet manual

iface enp100s0f1np1 inet manual

source /etc/network/interfaces.d/*
_____________________________________________________________________

I’ve installed a SFP+ interface which is named ‘enp100s0f0np0’

The SFP+ is connected with fibre to my 2.5Gbps switch


I would like to switch from ethernet to SFP+.


How can I switch to the SFP+ and keep the complete configuration the same?

keep same ipaddress, VM etc.



Thank you for your help,



Greetings Tom
 
Hi @bbgeek17,

thank you for your reply. Today I tried your suggestion but it didn't worked out.
I changed the /etc/network/interfaces to:
__________________________________________
auto lo
iface lo inet loopback

iface enp100s0f0np0 inet manual

# auto enp100s0f0np0
# iface enp100s0f0np0 inet manual

# iface enp101s0 inet manual

# iface enp100s0f1np1 inet manual

auto vmbr0
iface vmbr0 inet static
address 192.168.8.200/24
gateway 192.168.8.1
bridge-ports enp100s0f0np0
bridge-stp off
bridge-fd 0
__________________________________________

then I "systemctl restart networking"

But after that, impossible to ping my router 192.168.8.1
Also I could not open the Proxmox server at 192.168.8.200

Any suggestions?

Thank you,

Tomm
 
Hi @Tomm , not without you providing actual output from the system. Since you said you do not have network access to the server, are you manually typing the configuration into the forum?

At the very least, we would need:
cat /etc/network/interface
ip a
ethtool -i [interface_name]

Please use CODE tags "</>" when pasting the information. If you can't get actual output directly from the server a screenshot may be useful. Or you can output to a file and transfer the file via USB.



Blockbridge : Ultra low latency all-NVME shared storage for Proxmox - https://www.blockbridge.com/proxmox
 
Hi, I outputted the commands to a file and embedded them into this message.

I noticed two things,
1) in "ip a' it says the interface enp100s0f0np0 is DOWN
2) in ethtool it says Link detected: no

When I installed the SFP module for the first time, in Proxmox GUI I activated it and gave it an unique IP address.
At that moment, I could 'ping' to that IP address.
Code:
# network interface settings; autogenerated
# Please do NOT modify this file directly, unless you know what
# you're doing.
#
# If you want to manage parts of the network configuration manually,
# please utilize the 'source' or 'source-directory' directives to do
# so.
# PVE will preserve these directives, but will NOT read its network
# configuration from sourced files, so do not attempt to move any of
# the PVE managed interfaces into external files!

auto lo
iface lo inet loopback

iface enp100s0f0np0 inet manual

# auto enp100s0f0np0
# iface enp100s0f0np0 inet manual

# iface enp101s0 inet manual

# iface enp100s0f1np1 inet manual

auto vmbr0
iface vmbr0 inet static
        address 192.168.8.200/24
        gateway 192.168.8.1
        bridge-ports enp100s0f0np0
        bridge-stp off
        bridge-fd 0

source /etc/network/interfaces.d/*

_____________________________________________________

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: enp101s0: <BROADCAST,MULTICAST> mtu 1500 qdisc noop state DOWN group default qlen 1000
    link/ether c8:ff:bf: XX:XX:XX brd ff:ff:ff:ff:ff:ff
    altname enxc8ffbf
3: enp102s0: <BROADCAST,MULTICAST> mtu 1500 qdisc noop state DOWN group default qlen 1000
    link/ether c8:ff:bf:XX:XX:XX brd ff:ff:ff:ff:ff:ff
    altname enxc8ffbf
4: enp100s0f0np0: <NO-CARRIER,BROADCAST,MULTICAST,UP> mtu 1500 qdisc mq master vmbr0 state DOWN group default qlen 1000
    link/ether c8:ff:bf: XX:XX:XX brd ff:ff:ff:ff:ff:ff
    altname enxc8ffbf
5: enp100s0f1np1: <BROADCAST,MULTICAST> mtu 1500 qdisc noop state DOWN group default qlen 1000
    link/ether c8:ff:bf: XX:XX:XX brd ff:ff:ff:ff:ff:ff
    altname enxc8ffbf
6: vmbr0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc noqueue state UP group default qlen 1000
    link/ether c8:ff:bf: XX:XX:XX brd ff:ff:ff:ff:ff:ff
    inet 192.168.8.200/24 scope global vmbr0
       valid_lft forever preferred_lft forever
inet6 fe80::caff:bfff:/64 scope link proto kernel_ll
       valid_lft forever preferred_lft forever
7: tap110i0: <BROADCAST,MULTICAST,PROMISC,UP,LOWER_UP> mtu 1500 qdisc fq_codel master vmbr0 state UNKNOWN group default qlen 1000
link/ether 06:7d:XX:XX:XX:ef brd ff:ff:ff:ff:ff:ff

______________________________________________________________

Settings for enp100s0f0np0:
        Supported ports: [  ]
        Supported link modes:   10000baseT/Full
                                1000baseX/Full
                                10000baseSR/Full
                                10000baseLR/Full
        Supported pause frame use: Symmetric Receive-only
        Supports auto-negotiation: Yes
        Supported FEC modes: Not reported
        Advertised link modes:  10000baseT/Full
                                1000baseX/Full
                                10000baseSR/Full
                                10000baseLR/Full
        Advertised pause frame use: No
        Advertised auto-negotiation: Yes
        Advertised FEC modes: Not reported
        Speed: Unknown!
        Duplex: Unknown! (255)
        Auto-negotiation: off
        Port: Other
        PHYAD: 0
        Transceiver: internal
        Supports Wake-on: d
        Wake-on: d
        Current message level: 0x00000007 (7)
                               drv probe link
        Link detected: no
 
It does not just say "link down", it also says "no carrier". That means that no link/light is detected. However, the second port does not say that.
Either move the cable, or change the config to enp100s0f1np1

PS you can continue hiding the MACs if you want, but nobody in the world is trying to steal them.


Blockbridge : Ultra low latency all-NVME shared storage for Proxmox - https://www.blockbridge.com/proxmox
 
Last edited:
Hi again,
"PS you can continue hiding the MACs if you want, but nobody in the world is trying to steal them." LOL
Well, I switched ports (move cable)
The SFP module is in port 0 enp100s0f0np0

changed /etc/network/interfaces, restarted it but result remains the same, no connection over SFP

Then I configured enp100s0f0np0 in the GUI with active and autostart activated and a fixed IP address.

From my workstation, I can ping to that IP address.
Code:
auto lo
iface lo inet loopback

iface enp101s0 inet manual

iface enp101s0 inet manual

iface enp100s0f0np0 inet static
        address 192.168.8.253/24

iface enp100s0f1np1 inet manual

iface enp102s0 inet manual

auto vmbr0
iface vmbr0 inet static
        address 192.168.8.200/24
        gateway 192.168.8.1
        bridge-ports enp101s0
        bridge-stp off
        bridge-fd 0
 
@bbgeek17 I wish I could but my problem is not solved.
I can ping the SFP interface and access the proxmox gui, but not over ipaddress 192.168.8.200

Tomorrow, I'll try to modify the settings in /etc/network/interface a bit more.
 
Note that after you change bridges and routing tables around, just a quick network restart may not clean up the old IP/bridges/routes. Without going into how to manually check and resolve those things (possible), a reboot often is the quickest way, although you should know how to use the ip tool for production.

That being said, in the last config, your vmbr0 is still connected to the old port you indicated you wanted to swap, you cannot have a port connected directly and connected to the bridge and connected to the same subnet on different switches, Linux will send out traffic to the same subnet on 1 link, which leads to packets coming in on one MAC and out on another MAC for the same IP, many firewalls don’t like it.

My suggestion is to use the GUI ‘to set it up the way you want with 1 interface and then reboot, make sure of course you have a physical link up (ethtool) before troubleshooting further layers. If you have issues keeping a stable link (meaning it keeps up after reboot), troubleshoot those first.
 
Last edited:
@bbgeek17 I want to switch completely from ethernet to SFP but this setting was just for testing the interface.

When I installed Proxmox, I had to give the ethernet interface its IP address in my case 192.168.8.200/24.
In the Proxmox GUI and interfaces, I can only see the Linux bridge to modify not the primary ethernet interface. Is it hidden somewhere? Only changeable by adding lines in the interfaces?

@guruevi I installed the 192.168.8.253/24 only for testing the connection. As I can ping it from my workstation, it seems to be working.

My initial goal is to replace the ethernet interface with the SFP and keep the ipaddress/subnet the same.

nw-config.png
 
Hi Tomm,
in order to use .8.200 via the SFP module, you need to edit bridge vmbr0.
Remove the RJ45 port and replace it with the enp100s...np0 SFP.

Not sure if it's required, but to get rid of the .253 IP, remove it from enp100s...np0.

The primary interface doesn't have an IP on it's own, but the bridge to which the interface is assigned has
 
Last edited:
update:

When I connect the SFP module with ipaddress 192.168.8.253/24 and ping that address from my workstation, it responds.
It stopped responding after I pulled the ethernet cable. Re-insert the ethernet cable and the ping continues.

I tested the SFP modules and fibre cable with two Netgear switches and those are connected with link status on.

Then I tested my server to one of the netgear switches and the link status remained off.
The same for the 2.5Gbps switch to the netgear switch.

My conclusion is, the SFP modules aren´t comaptible with my server/2.5Gbps switch so I ordered new ones.

The 'old' ones I can always use to connect the Netgear switches.

I'll keep you up to date.

thank you