讨论,类似于浩方那样的互联技术。
我想实现类似于浩方那样的功能,使两个internet用户可以通过局域网选项玩游戏(如cs里面的lan game,主要是UDP协议)。
具体的做法是:
1,有一台外网的tcp服务器用于数据转发。
2,每个客户端用api hook启动游戏,hook程序启动时建立服务器的tcp连接,并且取得一个虚拟的局域网ip地址(10.0.0.1....)。
3,用hook修改sendto , recvfrom , connect ,gethostbyname这几个api。
(具体的做法有点复杂,有兄弟做过类似的东东吗?)。
现在遇到了一个问题,玩cs 或者 星际 时,可以看到对方创建的主机,但是无法加入游戏。(cs 提示, could not join the custom game until you install it .星际 ,unable to join the game )。
另外,自己写了两个UDP通讯的小程序,貌似可以很正常的通讯。