Wake on LAN don't work (Realtek RTL 8125 2.5Gbps LAN controller)

Hello everyone!
I new member in FreeBSD 13.1 amd64 and faced with issue wake on lan don't work on my PC config:
  • Motherboard MSI H510I Pro Wi-Fi
  • CPU Intel Celeton G5905
  • RAM 4Gb*2 planks (total 8 Gb)
  • Hard drives, 1*4TiB, 2*2TiB, SSD M.2 1*256GiB
  • Hard disk controllers - Jonsbo N1
  • Realtek® 8125B 2.5Gbps LAN controller also Intel® Wi-Fi 6 AX201
  • PSU Chieftec SMART 450W [SFX-450BS]
What i've done:

1. Configure BIOS:
[Wake-up event settings] → [Resume By PCI-E Device] → [Enabled]
[SETTINGS] → [Advanced] → [Power Management Setting] → [ErP Ready] → [Disabled]
[Fasboot] → [Disabled]

2. Modify /boot/loader.conf
Code:
if_re_load="YES"
if_re_name="/boot/modules/if_re.ko"

3.Install pkg realtek-re-kmod-198.00.pkg
4. Check NIC options:
Code:
root@:~# ifconfig re0ic
re0: flags=8943<UP,BROADCAST,RUNNING,PROMISC,SIMPLEX,MULTICAST> metric 0 mtu 1500
        options=2019<RXCSUM,VLAN_MTU,VLAN_HWTAGGING,WOL_MAGIC>
        ether 04:7c:16:3e:7e:f0
        inet 192.168.1.146 netmask 0xfffff
5.Check how NIC catch magic packet's:
Code:
root@:~#tcpdump -i re0 -x port 9 tcpdump:
 verbose output suppressed, use -v or -vv for full protocol decode
listening on re0, link-type EN10MB (Ethernet), capture size 262144 bytes
 07:02:42.370426 IP 192.168.1.110.52268 > 255.255.255.255.discard: UDP, length 102     
 0x0000:  4500 0082 5f11 0000 8011 1944 c0a8 016e    
 0x0010:  ffff ffff cc2c 0009 006e d61c ffff ffff     
 0x0020:  ffff 047c 163e 7ef0 047c 163e 7ef0 047c     
 0x0030:  163e 7ef0 047c 163e 7ef0 047c 163e 7ef0     
 0x0040:  047c 163e 7ef0 047c 163e 7ef0 047c 163e     
 0x0050:  7ef0 047c 163e 7ef0 047c 163e 7ef0 047c     
 0x0060:  163e 7ef0 047c 163e 7ef0 047c 163e 7ef0     
 0x0070:  047c 163e 7ef0 047c 163e 7ef0 047c 163e     
 0x0080:  7ef0
^C 1 packet captured
67 packets received by filter
0 packets dropped by kernel

Magic packet script that i used in PowerShell (sended from laptop):
Code:
PS C:\WINDOWS\system32> function Send-WOL
>> {
>>   <#
>>     .SYNOPSIS
>>     Send a WOL packet to ip address
>>     .PARAMETER mac
>>     The MAC address of the device that need to wake up
>>     .PARAMETER ip
>>     The IP address where the WOL packet will be sent to
>>     .EXAMPLE
>>     Send-WOL -mac 04:7c:16:3e:7e:f0 -ip 192.168.1.146
>>   #>
>>
>>   [CmdletBinding()]
>>   param(
>>     [Parameter(Mandatory = $True, Position = 1)]
>>     [string]$mac = "04:7c:16:3e:7e:f0",
>>     [string]$ip = "192.168.1.146",
>>     [int]$port = 9
>>   )
>>
>>   $address = [Net.IPAddress]::Parse($ip)
>>
>>   $mac = $mac.replace("-", ":")
>>   $target = $mac.split(':') | %{ [byte]('0x' + $_) }
>>   $packet = [byte[]](,0xFF * 6) + ($target * 16)
>>
>>   $UDPclient = new-Object System.Net.Sockets.UdpClient
>>   $UDPclient.Connect($address, $port)
>>   [void]$UDPclient.Send($packet, $packet.Length)
>> }

As result wake up on lan still don't work. Anyone know possible software solution's?

Also i cheked wake on lan work perfect under Win10 with my config. Under FreeBSD i checked if i move mouse or push keyboard PC boot up normal (i enabled wakeup from USB in BIOS for test).
 

Attachments

  • PowerManagmentSetup.png
    PowerManagmentSetup.png
    207.6 KB · Views: 171
  • Wakeup event setup.png
    Wakeup event setup.png
    210.4 KB · Views: 159
  • IntegratedPheripherals.png
    IntegratedPheripherals.png
    224.6 KB · Views: 170
Back
Top