Port Forwarding for Port 3415 Not Working - Windows Firewall?

I am trying to receive some grin from an exchange where I purchased it. My understanding is that once I run grin wallet -e listen I should be able to receive transactions by using a link of the format “http://My_Public_IP_Address:3415” as the withdrawal address on the exchange.

However, I have not been able to get port 3415 open, using https://canyouseeme.org/ to check…

I have added port forwarding for port range 3415-3415, Inbound and Local, to my modem’s firmware options, entering the first “inet” address I get from running ifconfig into the Private IP Address field in the port forwarding options. So this is the Private IP address of the VirtualBox Ubuntu virtual machine within which I am running the grin wallet / node, and it has a format like 192.168.x.x.

I have the VirtualBox Ubuntu machine in Bridge Adapter mode.

I am running this Ubuntu machine on a Windows 10 installation. I tried turning on port forwarding for 3415 at the Private IP Address of my Windows 10 machine (by replacing the Private IP Address of the Ubuntu machine in the port forwarding settings of my modem) to see if I could get it to register on CanYouSeeMe, and it did not work!

So now I am thinking my windows settings are to blame. Is there something I need to change in Windows Firewall or in the advanced options? Like enabling “Allow an App Through the Firewall” or port 3415 specifically for certain apps in Windows Defender Firewall Advanced Settings?

I’m at a loss for how to get this port opened up completely. It’s like there are several gates that must be opened: Modem port forwarding, Windows Firewall?, VM Bridge Adapter, am I missing anything?

I don’t want to make either my Windows machine or my Ubuntu VM vulnerable to security issues due to improperly setting up the port forwarding.

Any suggestions?!

Nevermind, I figured it out. After my initial failure in getting a port scanner to show 3415 as being open, I was no longer running the external grin listener while performing subsequent port scans. My problem was that no service on my machine, whether in Windows or Ubuntu VM was actually listening on port 3415. So my port 3415 was open all along (once I figured out the necessary steps anyway) but I wasn’t getting a positive result from the port scanners because they were timing out since I had no service listening. So with the grin external listener command running, I was able to get a positive result on the port scanner. With this newfound confidence, I was able to successfully withdraw my first grin from an exchange!

Thanks to TheHelper55464 from this TechSupportForum thread for the suggestion of having a service actively listening on the port while doing the port scan: