0
我正在使用asio在C++中重写python扭曲的服务器。我已经建立了下面的例子从asio tcp客户端应用程序的端口规范
http://www.boost.org/doc/libs/1_39_0/doc/html/boost_asio/tutorial.html:
Daytime.1 - 同步TCP daytime客户
Daytime.3 - 异步TCP daytime服务器
和他们似乎正常。然而,令我费解的是,当我创建了扭曲的服务器时,它和客户端都需要明确指定IP地址和端口号。我在这里的体验略有不同:
- 在客户端应用程序中,不需要规定端口号。我可以通过仅使用127.0.0.1作为命令行参数成功连接到服务器。
- 此外,只要第一个字节是127(例如127.1.2.3连接),我似乎可以连接到具有此IP地址的任何合法变体的同一台服务器。
- 客户端代码中有一个字面意思,指定使用我提供的操作系统提供的“白天”TCP服务进行连接。但是,在服务器代码中没有提及这一点。为什么我必须指定要连接的特定服务?我也怀疑这项服务可能与第1点和第2点的行为有关。
现在我知道服务器有一个接受者套接字监听,它只在接收到请求后才建立连接,但我想要一些更多细节在这里。
谢谢。所以我可以删除白天文字并明确连接? 另外,你有关于第2点的任何想法? –
AFAIK 127.x.x.x是一个环回,默认情况下该地址与所有接口绑定。 – Arunmu