Ah -- actually, it can. Newer cable/dsl modems (like the one I have) tend to have their own routers built right in. Often with their own firewall, etc. If you have a router behind it, then the modem is giving that router an IP address just like your router gives your computer an IP address, etc. And you'd have to set up port forwarding from your modem to your router. If you don't have the login info for your modem, that can create problems and would be something that would mean you'd probably need to use Hamachi.
One thing you can do if you do have access to log into your router, is set it to "DMZ mode." That basically treats everything behind it as being directly out on the internet.
Another thing you can do, which is what I wound up doing this last go-round, is just take the router off your network if your modem has a router built in anyway. Then you just set up port forwarding on the modem itself, and everything is a-ok. Of course that doesn't work if the modem doesn't have all the wifi features you want, or if the ISP didn't give you a login to the modem, but it's one option you have.