I had this problem...There are 2 ways to fix (for me). It drove me nuts... The easy fix for me was Disabling the IGMP Proxy and enabling UPNP.It also fixed an issue I had with my IPADS and ITUNES wifi detection. Adding a Static IP also worked, but there were extra steps.
1. One Option is to enable UPNP and disable the IMGP Proxy in the router Go to »192.168.1.1/index.cgi?active_page=900 Make sure both Check boxes are ticked..and select "Publish only the main WAN.." in the dropdown ... Click Apply
Its always a good idea to restart your XBOX after this change.
2. Assign a static IP to the XBOX in the Router: Advanced - IP Address Distribution - Connection List Look for the XBOX and click on it Check Static Lease Type - Apply
If your XBOX is not listed in the Connection List Click on NEW STATIC CONNECTION Give it an IP - Example 192.168.1.150 (the last number needs to be between 2 and 254....look though the connection list and assign a number that is not used. Enter in the MAC address (can be received via the XBOX network settings pages).
Now go to FIREWALL SETTINGS in your router Click on PORT FORWARDING Select the IP Address from the drop down box Select XBOX from teh APPLICATION dropdown. Click Add.
That should open the necessary ports. REstart your XBOX after this as well
Aside from adding the Port FOrward Rule..you could put the XBOX static IP into the DMZ HOST - Under Firewall Settings...
Im against the DMZ as it opens every port..but it works.
I really hope this helps..I know exactly what your son went through.