Jellyfin Forum
SOLVED: VPN "Kill Switch" breaks Jellyfin Server - Printable Version

+- Jellyfin Forum (https://forum.jellyfin.org)
+-- Forum: Support (https://forum.jellyfin.org/f-support)
+--- Forum: Troubleshooting (https://forum.jellyfin.org/f-troubleshooting)
+--- Thread: SOLVED: VPN "Kill Switch" breaks Jellyfin Server (/t-solved-vpn-kill-switch-breaks-jellyfin-server)



VPN "Kill Switch" breaks Jellyfin Server - hammtronic - 2025-04-25

*Update: Previously I reported this issue as Jellyfin failing to start. I found it was related to the VPN kill switch so I've updated the Subject but I'll leave the first post alone to leave the thread intact and in case it helps anyone with the same issue*

Jellyfin has been running fine for a month or so. After a computer restart, it has been failing to start again. When I try to run it from the System Tray launcher a popup message appears telling me "Could not start Jellyfin server process after the specified wait period." with directions for finding log files beneath (logs pasted below). The system tray icon remains available, but the option to Start goes back to being enabled and the option to Stop returns to disabled. So otherwise it seems like nothing is happening.

I've checked that Jellyfin is to the latest stable version and reset my computer a few times since then.

The logs make reference to Hosting failing to start, and problems with sockets. I haven't changed any networking on my host computer or in the hardware of my network.
I do run a VPN if that could somehow be relevant...

Jellyfin Version: 10.10.7
Installation Method: Windows Installer
Client: Chrome and Android app when it works, but I can't get that far because of this error at the server



Logs:

Quote:[2025-04-25 12:59:53.022 -04:00] [INF] [1] Main: Jellyfin version: "10.10.7"
[2025-04-25 12:59:53.038 -04:00] [INF] [1] Main: Environment Variables: ["[JELLYFIN_LOG_DIR, C:\ProgramData\Jellyfin\ServerData\log]"]
[2025-04-25 12:59:53.044 -04:00] [INF] [1] Main: Arguments: ["C:\Program Files\Jellyfin\jellyfin.dll", "--datadir", "C:\ProgramData\Jellyfin\ServerData"]
[2025-04-25 12:59:53.049 -04:00] [INF] [1] Main: Operating system: "Microsoft Windows 10.0.19045"
[2025-04-25 12:59:53.052 -04:00] [INF] [1] Main: Architecture: X64
[2025-04-25 12:59:53.055 -04:00] [INF] [1] Main: 64-Bit Process: True
[2025-04-25 12:59:53.058 -04:00] [INF] [1] Main: User Interactive: True
[2025-04-25 12:59:53.060 -04:00] [INF] [1] Main: Processor count: 8
[2025-04-25 12:59:53.063 -04:00] [INF] [1] Main: Program data path: "C:\ProgramData\Jellyfin\ServerData"
[2025-04-25 12:59:53.066 -04:00] [INF] [1] Main: Log directory path: "C:\ProgramData\Jellyfin\ServerData\log"
[2025-04-25 12:59:53.069 -04:00] [INF] [1] Main: Config directory path: "C:\ProgramData\Jellyfin\ServerData\config"
[2025-04-25 12:59:53.072 -04:00] [INF] [1] Main: Cache path: "C:\ProgramData\Jellyfin\ServerData\cache"
[2025-04-25 12:59:53.074 -04:00] [INF] [1] Main: Temp directory path: "C:\Users\Travis\AppData\Local\Temp\jellyfin"
[2025-04-25 12:59:53.077 -04:00] [INF] [1] Main: Web resources path: "C:\Program Files\Jellyfin\jellyfin-web"
[2025-04-25 12:59:53.080 -04:00] [INF] [1] Main: Application directory: "C:\Program Files\Jellyfin\"
[2025-04-25 12:59:53.630 -04:00] [INF] [1] Emby.Server.Implementations.AppBase.BaseConfigurationManager: Setting cache path: "C:\ProgramData\Jellyfin\ServerData\cache"
[2025-04-25 12:59:54.157 -04:00] [INF] [1] Emby.Server.Implementations.ApplicationHost: Loading assemblies
[2025-04-25 12:59:54.362 -04:00] [INF] [1] Emby.Server.Implementations.Plugins.PluginManager: Loaded assembly "Jellyfin.Plugin.FileTransformation, Version=2.2.2.0, Culture=neutral, PublicKeyToken=null" from "C:\ProgramData\Jellyfin\ServerData\plugins\File Transformation_2.2.2.0\Jellyfin.Plugin.FileTransformation.dll"
[2025-04-25 12:59:54.388 -04:00] [INF] [1] Emby.Server.Implementations.Plugins.PluginManager: Loaded assembly "IntroSkipper, Version=1.10.10.17, Culture=neutral, PublicKeyToken=null" from "C:\ProgramData\Jellyfin\ServerData\plugins\Intro Skipper_1.10.10.17\IntroSkipper.dll"
[2025-04-25 12:59:54.397 -04:00] [INF] [1] Emby.Server.Implementations.Plugins.PluginManager: Loaded assembly "Jellyfin.Plugin.LocalIntros, Version=3.0.0.0, Culture=neutral, PublicKeyToken=null" from "C:\ProgramData\Jellyfin\ServerData\plugins\Local Intros_3.0.0.0\Jellyfin.Plugin.LocalIntros.dll"
[2025-04-25 12:59:54.406 -04:00] [INF] [1] Emby.Server.Implementations.Plugins.PluginManager: Loaded assembly "Jellyfin.Plugin.MediaBar, Version=2.2.5.0, Culture=neutral, PublicKeyToken=null" from "C:\ProgramData\Jellyfin\ServerData\plugins\Media Bar_2.2.5.0\Jellyfin.Plugin.MediaBar.dll"
[2025-04-25 12:59:54.415 -04:00] [INF] [1] Emby.Server.Implementations.Plugins.PluginManager: Loaded assembly "Jellyfin.Plugin.Simkl, Version=6.0.0.0, Culture=neutral, PublicKeyToken=null" from "C:\ProgramData\Jellyfin\ServerData\plugins\Simkl_6.0.0.0\Jellyfin.Plugin.Simkl.dll"
[2025-04-25 12:59:54.556 -04:00] [INF] [1] Jellyfin.Networking.Manager.NetworkManager: Defined LAN subnets: ["127.0.0.1/8", "10.0.0.0/8", "172.16.0.0/12", "192.168.0.0/16"]
[2025-04-25 12:59:54.562 -04:00] [INF] [1] Jellyfin.Networking.Manager.NetworkManager: Defined LAN exclusions: []
[2025-04-25 12:59:54.565 -04:00] [INF] [1] Jellyfin.Networking.Manager.NetworkManager: Used LAN subnets: ["127.0.0.1/8", "10.0.0.0/8", "172.16.0.0/12", "192.168.0.0/16"]
[2025-04-25 12:59:54.574 -04:00] [INF] [1] Jellyfin.Networking.Manager.NetworkManager: Filtered interface addresses: ["10.72.60.152", "192.168.2.16", "127.0.0.1"]
[2025-04-25 12:59:54.579 -04:00] [INF] [1] Jellyfin.Networking.Manager.NetworkManager: Bind Addresses ["0.0.0.0"]
[2025-04-25 12:59:54.583 -04:00] [INF] [1] Jellyfin.Networking.Manager.NetworkManager: Remote IP filter is "Allowlist"
[2025-04-25 12:59:54.586 -04:00] [INF] [1] Jellyfin.Networking.Manager.NetworkManager: Filtered subnets: []
[2025-04-25 12:59:58.133 -04:00] [INF] [1] Emby.Server.Implementations.Plugins.PluginManager: Loaded plugin: "File Transformation" "2.2.2.0"
[2025-04-25 12:59:58.456 -04:00] [INF] [1] Emby.Server.Implementations.Plugins.PluginManager: Loaded plugin: "Intro Skipper" "1.10.10.17"
[2025-04-25 12:59:58.460 -04:00] [INF] [1] Emby.Server.Implementations.Plugins.PluginManager: Loaded plugin: "Local Intros" "3.0.0.0"
[2025-04-25 12:59:58.465 -04:00] [INF] [1] Emby.Server.Implementations.Plugins.PluginManager: Loaded plugin: "Media Bar" "2.2.5.0"
[2025-04-25 12:59:58.469 -04:00] [INF] [1] Emby.Server.Implementations.Plugins.PluginManager: Loaded plugin: "Simkl" "6.0.0.0"
[2025-04-25 12:59:58.472 -04:00] [INF] [1] Emby.Server.Implementations.Plugins.PluginManager: Loaded plugin: "TMDb" "10.10.7.0"
[2025-04-25 12:59:58.476 -04:00] [INF] [1] Emby.Server.Implementations.Plugins.PluginManager: Loaded plugin: "Studio Images" "10.10.7.0"
[2025-04-25 12:59:58.479 -04:00] [INF] [1] Emby.Server.Implementations.Plugins.PluginManager: Loaded plugin: "OMDb" "10.10.7.0"
[2025-04-25 12:59:58.498 -04:00] [INF] [1] Emby.Server.Implementations.Plugins.PluginManager: Loaded plugin: "MusicBrainz" "10.10.7.0"
[2025-04-25 12:59:58.502 -04:00] [INF] [1] Emby.Server.Implementations.Plugins.PluginManager: Loaded plugin: "AudioDB" "10.10.7.0"
[2025-04-25 12:59:58.635 -04:00] [INF] [1] Main: Kestrel is listening on "0.0.0.0"
[2025-04-25 12:59:58.679 -04:00] [INF] [1] IntroSkipper.Services.Entrypoint: Running startup enqueue
[2025-04-25 12:59:58.796 -04:00] [INF] [1] IntroSkipper.Manager.QueueManager: Running enqueue of items in library "Bluu Shows"
[2025-04-25 12:59:59.094 -04:00] [INF] [1] IntroSkipper.Manager.QueueManager: Running enqueue of items in library "Collections"
[2025-04-25 12:59:59.098 -04:00] [INF] [1] IntroSkipper.Manager.QueueManager: Running enqueue of items in library "RRed Movies"
[2025-04-25 12:59:59.700 -04:00] [ERR] [1] Microsoft.Extensions.Hosting.Internal.Host: Hosting failed to start
System.Net.Sockets.SocketException (10013): An attempt was made to access a socket in a way forbidden by its access permissions.
  at System.Net.Sockets.Socket.UpdateStatusAfterSocketErrorAndThrowException(SocketError error, Boolean disconnectOnFailure, String callerName)
  at System.Net.Sockets.Socket.Listen(Int32 backlog)
  at Microsoft.AspNetCore.Server.Kestrel.Transport.Sockets.SocketConnectionListener.Bind()
  at Microsoft.AspNetCore.Server.Kestrel.Transport.Sockets.SocketTransportFactory.BindAsync(EndPoint endpoint, CancellationToken cancellationToken)
  at Microsoft.AspNetCore.Server.Kestrel.Core.Internal.Infrastructure.TransportManager.BindAsync(EndPoint endPoint, ConnectionDelegate connectionDelegate, EndpointConfig endpointConfig, CancellationToken cancellationToken)
  at Microsoft.AspNetCore.Server.Kestrel.Core.KestrelServerImpl.<>c__DisplayClass28_01.<<StartAsync>g__OnBind|0>d.MoveNext()
--- End of stack trace from previous location ---
  at Microsoft.AspNetCore.Server.Kestrel.Core.Internal.AddressBinder.BindEndpointAsync(ListenOptions endpoint, AddressBindContext context, CancellationToken cancellationToken)
  at Microsoft.AspNetCore.Server.Kestrel.Core.ListenOptions.BindAsync(AddressBindContext context, CancellationToken cancellationToken)
  at Microsoft.AspNetCore.Server.Kestrel.Core.Internal.AddressBinder.EndpointsStrategy.BindAsync(AddressBindContext context, CancellationToken cancellationToken)
  at Microsoft.AspNetCore.Server.Kestrel.Core.Internal.AddressBinder.BindAsync(ListenOptions[] listenOptions, AddressBindContext context, Func
2 useHttps, CancellationToken cancellationToken)
  at Microsoft.AspNetCore.Server.Kestrel.Core.KestrelServerImpl.BindAsync(CancellationToken cancellationToken)
  at Microsoft.AspNetCore.Server.Kestrel.Core.KestrelServerImpl.StartAsync[TContext](IHttpApplication1 application, CancellationToken cancellationToken)
  at Microsoft.AspNetCore.Hosting.GenericWebHostService.StartAsync(CancellationToken cancellationToken)
  at Microsoft.Extensions.Hosting.Internal.Host.<StartAsync>b__15_1(IHostedService service, CancellationToken token)
  at Microsoft.Extensions.Hosting.Internal.Host.ForeachService[T](IEnumerable
1 services, CancellationToken token, Boolean concurrent, Boolean abortOnFirstException, List1 exceptions, Func3 operation)
  at Microsoft.Extensions.Hosting.Internal.Host.StartAsync(CancellationToken cancellationToken)
  at Jellyfin.Server.Program.StartServer(IServerApplicationPaths appPaths, StartupOptions options, IConfiguration startupConfig)
[2025-04-25 12:59:59.709 -04:00] [ERR] [1] Main: Kestrel failed to start! This is most likely due to an invalid address or port bind - correct your bind configuration in network.xml and try again
[2025-04-25 12:59:59.710 -04:00] [FTL] [1] Main: Error while starting server
System.Net.Sockets.SocketException (10013): An attempt was made to access a socket in a way forbidden by its access permissions.
  at System.Net.Sockets.Socket.UpdateStatusAfterSocketErrorAndThrowException(SocketError error, Boolean disconnectOnFailure, String callerName)
  at System.Net.Sockets.Socket.Listen(Int32 backlog)
  at Microsoft.AspNetCore.Server.Kestrel.Transport.Sockets.SocketConnectionListener.Bind()
  at Microsoft.AspNetCore.Server.Kestrel.Transport.Sockets.SocketTransportFactory.BindAsync(EndPoint endpoint, CancellationToken cancellationToken)
  at Microsoft.AspNetCore.Server.Kestrel.Core.Internal.Infrastructure.TransportManager.BindAsync(EndPoint endPoint, ConnectionDelegate connectionDelegate, EndpointConfig endpointConfig, CancellationToken cancellationToken)
  at Microsoft.AspNetCore.Server.Kestrel.Core.KestrelServerImpl.<>c__DisplayClass28_01.<<StartAsync>g__OnBind|0>d.MoveNext()
--- End of stack trace from previous location ---
  at Microsoft.AspNetCore.Server.Kestrel.Core.Internal.AddressBinder.BindEndpointAsync(ListenOptions endpoint, AddressBindContext context, CancellationToken cancellationToken)
  at Microsoft.AspNetCore.Server.Kestrel.Core.ListenOptions.BindAsync(AddressBindContext context, CancellationToken cancellationToken)
  at Microsoft.AspNetCore.Server.Kestrel.Core.Internal.AddressBinder.EndpointsStrategy.BindAsync(AddressBindContext context, CancellationToken cancellationToken)
  at Microsoft.AspNetCore.Server.Kestrel.Core.Internal.AddressBinder.BindAsync(ListenOptions[] listenOptions, AddressBindContext context, Func
2 useHttps, CancellationToken cancellationToken)
  at Microsoft.AspNetCore.Server.Kestrel.Core.KestrelServerImpl.BindAsync(CancellationToken cancellationToken)
  at Microsoft.AspNetCore.Server.Kestrel.Core.KestrelServerImpl.StartAsync[TContext](IHttpApplication1 application, CancellationToken cancellationToken)
  at Microsoft.AspNetCore.Hosting.GenericWebHostService.StartAsync(CancellationToken cancellationToken)
  at Microsoft.Extensions.Hosting.Internal.Host.<StartAsync>b__15_1(IHostedService service, CancellationToken token)
  at Microsoft.Extensions.Hosting.Internal.Host.ForeachService[T](IEnumerable
1 services, CancellationToken token, Boolean concurrent, Boolean abortOnFirstException, List1 exceptions, Func3 operation)
  at Microsoft.Extensions.Hosting.Internal.Host.StartAsync(CancellationToken cancellationToken)
  at Jellyfin.Server.Program.StartServer(IServerApplicationPaths appPaths, StartupOptions options, IConfiguration startupConfig)
[2025-04-25 12:59:59.779 -04:00] [INF] [1] Main: Running query planner optimizations in the database... This might take a while
[2025-04-25 12:59:59.792 -04:00] [INF] [1] Emby.Server.Implementations.ApplicationHost: Disposing "CoreAppHost"
[2025-04-25 12:59:59.795 -04:00] [INF] [1] Emby.Server.Implementations.ApplicationHost: Disposing "MusicBrainzArtistProvider"
[2025-04-25 12:59:59.798 -04:00] [INF] [1] Emby.Server.Implementations.ApplicationHost: Disposing "MusicBrainzAlbumProvider"
[2025-04-25 12:59:59.801 -04:00] [INF] [1] Emby.Server.Implementations.ApplicationHost: Disposing "PluginManager"



RE: VPN "Kill Switch" breaks Jellyfin Server - hammtronic - 2025-04-25

Update : I continued to invesigate the issue on my own, and found that disabling my VPN's "Kill Switch" allows Jellyfin to run again. Once it is running it can stay running even with this VPN feature turned on. I'd turned it on a while ago, but I guess this was the first computer restart since then, so it was the first time Jellyfin tried to boot while it was running.

I would like to be able to use the VPN Kill Switch and Jellyfin without needing to toggle settings on and off, but it is workable for now. If there's any suggestions about a better fix I'd be appreciative.

I'm not clear on how to mark a thread as resolved, so I'm just leaving this here unless someone follows up.

---

My VPN is Malwarebytes Privacy , and the problem setting is "Kill Switch: Block all network traffic if the VPN disconnected."
To be clear, the VPN was not disconnected throughout this so the traffic shouldn't have been getting blocked.
I want to keep this setting active as I download torrents off the same machine, and having the VPN go down while I am AFK is a problem.


RE: VPN "Kill Switch" breaks Jellyfin Server - JustAnotherDude - 2025-04-25

Most VPNs allow you to whitelist certain services for the killswitch to ignore. And some programs will let you bind to a specific network protocol, like tun0. Just check the advanced settings in your VPN, or the advanced settings for your download client.


RE: VPN "Kill Switch" breaks Jellyfin Server - hammtronic - 2025-04-25

Thank you, I wound up black listing my torrent client instead but it's got everything doing what I need it to.