The following should configure your Linksys router to enable Internet multiplayer a Linksys dsl/cable modem router.
Assume a PC is connected to the Internet through a Linksys router (mine is a BEFW11S4; all Linksys routers are similar) cable modem/DSL. Also, I'm using Windows XP SP1, assume defaults elsewhere. This is necessary only if the game host PC accesses Internet through router (ref. CM User Manual).
1) Determine the PC's IP address. For Linksys routers, and 1 PC, this should be 192.168.1.100
When you start CM in TCP/IP host mode, this will be displayed again in the prompt "Waiting for opponet to connect. Note that this can change /w multiple PC's sharing the Internet through the Linksys router.
2) Through your browser, enter the router's setup menu by entering http://192.168.1.1
Put in the password info. Linksys, by default, uses the following:
userid=[leave blank]
password=admin
3) In the router setup, go to the Forwarding tab (under Advanced). Add a new entry with the following information:
Customized Application=Combat Mission
Ext Port=7023 - 7023
"Protocol TCP" box=selected
"IP Address"=[PC IP addr, usually 192.168.1.100]
"Enable" box=selected
Don't forget to hit "Apply" button at bottom!
4) If you have a software firewall, do all the things you have to do to enable it.
To Play:
[A] You normally only need to setup above 1 time, for a 1 PC-thru-Linksys config.
Before launching CM, get the current WAN IP address from the Linksys router. Enter the router setup like above, select Status tab, look for WAN IP address.
[C] Each time you start the host, give your opponent the WAN IP address, and NOT your PC's IP address (typically 192.168.1.100) as displayed in CM's TCP/IP "Waiting for opponent to connect" screen.
[D] Note that your WAN IP address, unlike your PC
IP addr can/will change when you power cycle your cable modem, etc., so you'll need to check this every time you fire up the CM host.