Ok, thanks for the details.
That error msg means that when you connected to the session, FS9 got a list of IP addresses for all players that were already in the game, but wasn't able to connect to one of them. FS2002 used to just continue, and you wouldn't see that player, but FS9 aborts the connection and won't let you join.
The problem is usually related to the ports being used. When your FS9 tries to connect to one of the other players, some of the data isn't reaching that player, or their responses aren't making it back to you.
Since you have FSHost and FS9 on separate machines, and you said you're forwarding port 23456 to the FSHost machine, my guess is this... You're probably using the default "Connect" port in FS9 (which is also 23456) and when you connect to another player on the internet, their responses are trying to come back to you on 23456, but those responses are being forwarded to the FSHost machine, and they never make it back to the FS9 machine. Try changing FS9 to use port 23455 (or anything other than 23456) and see if it's any better. To change the port in FS9, go to the Multiplayer connection screen, click the "Client Settings" button, and change the "Connect" port to 23455. Then be sure to click the Search button again, since it won't start using the new port until you do. You may also have to forward port 23455 to the FS9 machine, if your firewall is blocking it.
Let us know what you find,
Russell