Is your modem a modem only, or a modem/router. In other words do you get a public IP directly on eth0?

If your modem is a router (or using a router) you either need UPnP enabled on router and...