Unable to connect from external IP, can connect from internal IP

I’m running Windows 10 with Kodi 17.

I’ve configured Kodi to allow remote control on port 9891.
My router is configured to forward this port, and the Windows 10 firewall is off.

When I access Kodi internally using a local IP (192.168.2.14:9891) it works fine, as seen in the debug log below:

Code:
13:49:32.065 T:152   DEBUG: CWebServer[9891]: request received for /
13:49:39.735 T:3648   DEBUG: Previous line repeats 1 times.
13:49:39.735 T:3648   DEBUG: CWebServer[9891]: request received for /themes/base/css/base.css
13:49:39.736 T:6320   DEBUG: CWebServer[9891]: request received for /js/kodi-webinterface.js
13:49:39.822 T:12796   DEBUG: CWebServer[9891]: request received for /icon.png
13:49:40.006 T:3648   DEBUG: CWebServer[9891]: request received for /themes/base/fonts/opensans/opensans-regular-webfont.woff
13:49:40.013 T:12796   DEBUG: CWebServer[9891]: request received for /themes/base/fonts/opensans/opensans-light-webfont.woff
13:49:40.618 T:6320   DEBUG: CWebServer[9891]: request received for /lang/_strings/en.json
13:49:40.647 T:6320   DEBUG: CWebServer[9891]: request received for /lib/soundmanager/swf/soundmanager2_flash9.swf?ts=1488480583008
13:49:40.686 T:6320   DEBUG: CWebServer[9891]: request received for /jsonrpc?Addons.GetAddons
13:49:40.849 T:6320   DEBUG: Previous line repeats 1 times.
13:49:40.849 T:6320   DEBUG: CWebServer[9891]: request received for /jsonrpc?PlaylistCollection
13:49:40.887 T:6320   DEBUG: CWebServer[9891]: request received for /jsonrpc?Application.GetProperties
13:49:40.958 T:6320   DEBUG: CWebServer[9891]: request received for /themes/base/images/logo.png?1423030648
13:49:40.982 T:6320   DEBUG: CWebServer[9891]: request received for /images/fanart_default/amp.jpg
13:49:40.983 T:3648   DEBUG: CWebServer[9891]: request received for /themes/base/fonts/material/Material-Design-Icons.woff
13:49:40.983 T:12796   DEBUG: CWebServer[9891]: request received for /themes/base/fonts/icomoon/fonts/icomoon.woff
13:49:41.214 T:3648   DEBUG: CWebServer[9891]: request received for /jsonrpc?Player.GetActivePlayers
13:49:41.284 T:3648   DEBUG: CWebServer[9891]: request received for /jsonrpc?PlaylistCollection
13:49:41.417 T:8432   DEBUG: JSONRPC Server: New connection detected
13:49:41.417 T:8432    INFO: JSONRPC Server: New connection added
13:49:56.821 T:8432    INFO: WebSocket: connection closed by client
13:49:56.821 T:8432    INFO: JSONRPC Server: Disconnection detected

But when I try to access Kodi from an external IP, it’s unable to connect, and there is no event in the debug log that suggests it is even trying to connect. I know I am using the correct external IP because I grabbed it from my router’s web interface. I also checked http://whatismyipaddress.com to be sure.

What am I missing here? Any help would be greatly appreciated!