陈硕的第8节视频介绍了TCP自连接这个特性。
程序代码类似于:
for i in range(65536):
try:
sock = socket.create_connection(('localhost', port))
time.sleep(60*60)
except:
...
这里主要是这样的一个逻辑:
首先在循环中每次尝试创建连接的时候,TCP会分配一个IP给客户端,这个IP不是每次都随机的而是会自增。在最多尝试了65536或更少次后,一定会恰好和我们输入的port参数重合(如果port没有被占用),那么就产生了一个客户端连接到自己的现象。要避免这个现象,可以在网络库中进行判断。
开始学习陈硕的网络编程课程
2015-10-19 21-37-24
by Kamushin
很久前就关注了陈硕的这门课,等着他结课后一次性看完,截止到现在他已经更新了40多节了, 就要结束了,所以开始刷这门课。
read more