Linux battlefield vietnam servers not listed on ASE
Steven Hartland
killing at multiplay.co.uk
Mon Mar 29 22:34:33 EST 2004
We've been asked to look into why our BFV servers aren't listed
on your ASE browser. From tracing the packets looks like its a bug
with the master at your end. Below is a packet dump of a linux BFV
server reporting to the master:
00:38:59.971393 yoda.multiplay.co.uk.27123 > eye.edome.net.27900: udp 16
0x0000 4500 002c 4116 0000 4011 cd0d d487 dbb2 E..,A... at .......
0x0010 c2fb f967 69f3 6cfc 0018 9ed4 5c68 625c ...gi.l.....\hb\
0x0020 3237 3132 335c 6266 3139 3432 27123\bf1942
00:39:00.064432 eye.edome.net.27900 > yoda.multiplay.co.uk.35433: udp 16
0x0000 4500 002c 2205 0000 2d11 ff1e c2fb f967 E..,"...-......g
0x0010 d487 dbb2 6cfc 8a69 0018 6884 5c65 6368 ....l..i..h.\ech
0x0020 6f5c 3136 3534 3337 3836 3234 0000 o\1654378624..
00:39:00.064533 yoda.multiplay.co.uk > eye.edome.net: icmp: yoda.multiplay.co.uk udp port 35433 unreachable
0x0000 4500 0038 4117 0000 4001 cd10 d487 dbb2 E..8A... at .......
0x0010 c2fb f967 0303 057f 0000 0000 4500 002c ...g........E..,
0x0020 2205 0000 2d11 ff1e c2fb f967 d487 dbb2 "...-......g....
0x0030 6cfc 8a69 0018 0000 l..i....
00:39:11.327557 eye.edome.net.27243 > yoda.multiplay.co.uk.23000: udp 10
0x0000 4500 0026 61ab 0000 2d11 bf7e c2fb f967 E..&a...-..~...g
0x0010 d487 dbb2 6a6b 59d8 0012 9743 fefd 007e ....jkY....C...~
0x0020 372a 00ff ffff 0000 0000 0000 0000 7*............
00:39:11.327648 yoda.multiplay.co.uk > eye.edome.net: icmp: yoda.multiplay.co.uk udp port 23000 unreachable
0x0000 4500 0038 412f 0000 4001 ccf8 d487 dbb2 E..8A/.. at .......
0x0010 c2fb f967 0303 38a7 0000 0000 4500 0026 ...g..8.....E..&
0x0020 61ab 0000 2d11 bf7e c2fb f967 d487 dbb2 a...-..~...g....
0x0030 6a6b 59d8 0012 0000 jkY.....
As you can see the server is reporting but instead of the query being
sent back to the listed port, in this case 27123, its sent to 35433 and
23000. The server isn't listening on said ports so no response is
sent and the server isn't listed.
A BF1942 server does the same but for some reason the master
after trying 35433 and 23000 also queries the source / specified
port e.g.
00:53:51.005642 yoda.multiplay.co.uk.27224 > eye.edome.net.27900: udp 16
0x0000 4500 002c 46c9 0000 4011 c75a d487 dbb2 E..,F... at ..Z....
0x0010 c2fb f967 6a58 6cfc 0018 9c6f 5c68 625c ...gjXl....o\hb\
0x0020 3237 3232 345c 6266 3139 3432 27224\bf1942
00:53:55.540368 eye.edome.net.27243 > yoda.multiplay.co.uk.27224: udp 1
0x0000 4500 001d ecfe 0000 2d11 3434 c2fb f967 E.......-.44...g
0x0010 d487 dbb2 6a6b 6a58 0009 4b7a 7373 0000 ....jkjX..Kzss..
0x0020 0000 0000 0000 0000 0000 0000 0000 ..............
00:53:55.546308 yoda.multiplay.co.uk.27224 > eye.edome.net.27243: udp 816
0x0000 4500 034c 46db 0000 4011 c428 d487 dbb2 E..LF... at ..(....
0x0010 c2fb f967 6a58 6a6b 0338 84b8 4559 4531 ...gjXjk.8..EYE1
0x0020 0762 6631 3934 3206 3237 3130 3120 4d75 .bf1942.27101.Mu
0x0030 6c74 6970 6c61 792e 636f 2e75 6b20 3a3a ltiplay.co.uk.::
0x0040 2054 4553 5420 436c 616e 7365 7209 636f .TEST.Clanser.co
0x0050 6e71 7565 7374 0961 6265 7264 6565 6e05 nquest.aberdeen.
0x0060 7631 2e36 0230 0230 0332 340c 6163 7469 v1.6.0.0.24.acti
etc
As the query port is sent in the heartbeat packet I don't see why the
master is not using this information and querying it directly first,
instead of 35433 and 23000 first then the query port in the case of
BF1942 ( success but causes needless traffic ) and exclusively 35433,
23000 in the case of BFV ( failure and also needless traffic ).
N.B. I'm lead to believe the BFV server incorrectly sends
\hb\<port>\bf1942 instead of something uniq e.g.
\hb\<port>\bfv
Finally a windows server BFV seems to get a correct response
without queries to 23000 or 35433 but Im unsure if that's due
to the OS hiding the icmp details from ethereal / winpcap
vader.multiplay.co.uk:15690 -> eye.edome.net:27900
0000 00 c0 7b c0 85 d3 00 20 ed 6e 52 85 08 00 45 00 ..{.... .nR...E.
0010 00 2c d0 45 00 00 80 11 fd dc d4 87 db b3 c2 fb .,.E.... ........
0020 f9 67 3d 4a 6c fc 00 18 ca 77 5c 68 62 5c 31 35 .g=Jl... .w\hb\15
0030 36 39 30 5c 62 66 31 39 34 32 690\bf19 42
eye.edome.net:27900 -> vader.multiplay.co.uk:15690
0000 00 20 ed 6e 52 85 00 c0 7b c0 85 d3 08 00 45 00 . .nR... {.....E.
0010 00 21 3d 45 00 00 2d 11 e3 e8 c2 fb f9 67 d4 87 .!=E..-. .....g..
0020 db b3 6c fc 3d 4a 00 0d 1b b9 70 52 8e e2 ce ce ..l.=J.. ..pR....
0030 00 00 00 00 00 00 00 00 00 00 00 00 ........ ....
If you need any more information on this dont hesitate to ask
either via email or you can find me on IRC in #mpukhosting
on QuakeNet.
Regards
Steve / K
Multiplay Clanservers
================================================
This e.mail is private and confidential between Multiplay (UK) Ltd. and the person or entity to whom it is addressed. In the event of misdirection, the recipient is prohibited from using, copying, printing or otherwise disseminating it or any information contained in it.
In the event of misdirection, illegible or incomplete transmission please telephone (023) 8024 3137
or return the E.mail to postmaster at multiplay.co.uk.
More information about the Bf1942
mailing list