Do I need to open port 5223 for iPhone push notifications to work when on wifi? iPhone 4, iOS 4.3.1

Push notifications are working, when WiFi is turned off and device uses 3G, but when WiFi is on I can't receive any notifications.

I was told that something can block port 5223 that push notifications, so I've turned of firewall on my Linksys router. Still don't work.

For some games I used to forward port for IP address, the pattern in router configuration is as follows:

app_name, port_range_start, port_range_stop, TCP/UDP, IP

But when I list my DHCP clients in router admin page it seems that iPhone has no IP.

So what to do nex
You don't need to open any ports on your firewalls for push notifications to work on your iPhone.

My iOS devices spent 90% of the time behind firewalls that don't allow any inbound connections to them. Notifications work fine (even with mobile data turned off).

The Apple docs at http://support.apple.com/kb/HT3576 do talk about port 5223. But they will be referring to out going connections on that port (even though they don't explicitly state that). Your firewall is unlikely to be blocking those, though I guess it is worth checking. I guess it is also possible that your ISP is blocking the out going port, but again that seems unlikely.

Despite the "push" in its name, Push Notifications are actually more accurately "pull" notifications (like most things with "push" in their name). The iOS device connects to Apple on port 5223 to listen in for the notifications.