Try turning on DMZ on your router to see if is a router issue. Your game should show up on gamespy with a regular ping. With DMZ on (All ports opened) windows firewall will ask you if you would like to continue blocking Battlefront.exe. Select "No" and nothing else should be required to be done. You may have to assign a static IP to your computer in order to run in DMZ mode, your router manual should help you do that.
Supposedly these are the only ports you need fowarded to accually run the game:
3658, 3659 & 6500
I also heard to open 27900 so Gamespy servers can see the game. But when DMZ is on you don't need to do this.
As far as the mic problem. We have the same trouble with no mic in the room we are hosting. From hours of troubleshooting I am convinced that it has something to do with having the same Public (WAN) IP address on the ps2 and computer running the server, because in your own room, it recognizes your IP as your ps2's local IP address, not your WAN address.
I can only think of 2 possible solutions:
1) somehow setup the ps2 to run through a proxy wich would give it a different IP, but it would give you a higher ping. I wouldn't run the computer through one because that would pobably slow it down quite a bit. If anyone knows how to do this !please! post instructions.
2) connect 2 modems, 1 for computer and 1 for ps2. This would also pull 2 different IP's. I have DSL so I don't know if this would work for cable, but theroretically it would work for my connection. My ISP says I cannot do this without paying for 2 phone and DSL lines, but they also told me my upstream bandwidth is only 384k when it is really 574k. I do not want to go buy a new modem to try this longshot scheme, so if anyone has an extra modem laying around, could they try it and please post results?
thanks in advance