📄 120.htm
字号:
<br>
(在另一个终端) <br>
$netstat -a | grep udp <br>
udp 0 0 10.83.66.66;5555 *:* <br>
udp 0 0 *:5555 *:* <br>
<br>
<br>
<br>
用ifconfig eth0 del 10.83.66.67删掉别名.再重复以上测试2 <br>
<br>
结论完全一样. <br>
<br>
<br>
用tcp,(去掉-u),结论也一样. <br>
<br>
<br>
<br>
顺便问一下,为什么说127.0.0.1与讨论无关呢?难道不能将一个单网卡的 <br>
<br>
机器看做一个两个网络接口(eth0和lo)吗? <br>
<br>
<br>
<br>
: 然后用这个socks测试 <br>
: 127.0.0.1与这里的讨论无关。 <br>
: 【 在 eepaul (阿龙) 的大作中提到: 】 <br>
: : Single CArd <br>
: : NO ip alias.(I don't down how to set ip alias ,so I don't test it <br>
: : with ip alias) <br>
: .................(以下省略) <br>
<br>
-- <br>
Rather than Love...Wealth... <br>
or Fame... <br>
Gave me Truth. <br>
-Walden <br>
※ 修改:·eepaul 於 08月30日13:17:05 修改本文·[FROM: 202.120.224.18] <br>
※ 来源:·UNIX编程 www.tiaozhan.com/unixbbs/·[FROM: 202.120.224.18] <br>
发信人: scz (小四), 信区: UNP <br>
标 题: Re: 关于SO_REUSEADDR选项的疑问 <br>
发信站: UNIX编程 (2001年08月30日18:21:12 星期四), 站内信件 <br>
<br>
照这个测试结论,UNP中强调的第三种情况就更不可 <br>
理解了 <br>
<br>
大家怎么想?难道是当时作者测试系统和我们现在的实现不同了吗? <br>
<br>
<br>
如果一个已经使用ANY,为什么还要另外一个使用单播IP呢? <br>
19章中也不需要ANY啊。只要把所有单播IP各自绑定一次即可, <br>
我要晕了 <br>
<br>
【 在 eepaul (阿龙) 的大作中提到: 】 <br>
: 【 在 scz (小四) 的大作中提到: 】 <br>
: : 你这个测试与我们希望看到的不符 <br>
: : ifconfig eth0:1 ... <br>
: : 做IP Alias <br>
: : 实际上你应该来一个10.83.66.67的IP别名 <br>
: 搞了一个别名,10.83.66.67.然后 <br>
: 1.不用INADDR_ANY,有别名 <br>
: $sock -s -u 10.83.66.67 8888 <br>
: (在另一个终端上) <br>
: $sock -s -u 10.83.66.66 8888 <br>
: .................(以下省略) <br>
<br>
-- <br>
<br>
也许有一天,他再从海上蓬蓬的雨点中升起, <br>
飞向西来,再形成一道江流,再冲倒两旁的石壁, <br>
再来寻夹岸的桃花。然而,我不敢说来生,也不敢信来生...... <br>
※ 修改:·scz 於 08月30日18:25:52 修改本文·[FROM: 211.167.65.123] <br>
※ 来源:·UNIX编程 www.tiaozhan.com/unixbbs/·[FROM: 211.167.65.123] <br>
发信人: ysqcn (岁月无声), 信区: UNP <br>
标 题: Re: 关于SO_REUSEADDR选项的疑问 <br>
发信站: UNIX编程 (2001年08月30日22:18:25 星期四), 站内信件 <br>
<br>
看源码得出的结论,正好可以解释下面的情况(linux下udp套接口): <br>
udp绑定到相同的端口号(不是同一套接字绑定多次),如果同时满足下面的三个条件: <br>
1、其中的两个套接字绑定的网络接口相同 <br>
2、其中有一个套接字IP为INADDR_ANY,或者其中的两个IP相同 <br>
3、其中有一个套接字没有设置SO_REUSEADDR标志 <br>
则绑定失败,否则就成功 <br>
(如果有不同的情况,通知我喔:-) <br>
<br>
下面是简要解释: <br>
对clown的情况,两个IP不同,有都不为INADDR_ANY,不满足第二个条件,绑定总是成功, <br>
不论你设不设置SO_REUSEADDR标志。(你不妨将其中之一换为INADDR_ANY看看) <br>
<br>
: 搞了一个别名,10.83.66.67.然后 <br>
: <br>
: <br>
: 1.不用INADDR_ANY,有别名 <br>
: <br>
: $sock -s -u 10.83.66.67 8888 <br>
: <br>
: (在另一个终端上) <br>
: $sock -s -u 10.83.66.66 8888 <br>
: <br>
: (在另一个终端上) <br>
: $netstat -a | grep udp <br>
: udp 0 0 10.83.66.67:8888 *:* <br>
: udp 0 0 10.83.66.66:8888 *:* <br>
: <br>
不满足上面第二个条件,所以绑定成功 <br>
: <br>
: 2.用INADDR_ANY,有别名. <br>
: <br>
: $sock -s -u 9999 <br>
满足第二个条件 <br>
: <br>
: (在令一个终端上) <br>
: $sock -s -u 10.83.66.66 9999 <br>
: can't bink local address: Address alread in use <br>
两个都没有设置SO_REUSEADDR,满足第三个条件 <br>
IP别名,同一网络接口,满足第一个条件,绑定失败 <br>
: <br>
: $sock -s -u -A 10.83.66.66 9999 <br>
: can't bind...................................... <br>
: <br>
: 如果两个都用-A选项,就可以 <br>
: $sock -s -u -A 5555 <br>
: <br>
: (在令一个终端) <br>
: $sock -s -u -A 10.83.66.66 5555 <br>
: <br>
两个都设置了SO_REUSEADDR,不满足第三个条件,绑定成功 <br>
: <br>
: (在另一个终端) <br>
: $netstat -a | grep udp <br>
: udp 0 0 10.83.66.66;5555 *:* <br>
: udp 0 0 *:5555 *:* <br>
: <br>
: <br>
: <br>
: 用ifconfig eth0 del 10.83.66.67删掉别名.再重复以上测试2 <br>
: <br>
: <br>
: 结论完全一样. <br>
: <br>
: <br>
: 用tcp,(去掉-u),结论也一样. <br>
: <br>
: <br>
: <br>
: 顺便问一下,为什么说127.0.0.1与讨论无关呢?难道不能将一个单网卡的 <br>
: <br>
: 机器看做一个两个网络接口(eth0和lo)吗? <br>
: <br>
: <br>
: <br>
: : 然后用这个socks测试 <br>
: : 127.0.0.1与这里的讨论无关。 <br>
: : 【 在 eepaul (阿龙) 的大作中提到: 】 <br>
: : : Single CArd <br>
: : : NO ip alias.(I don't down how to set ip alias ,so I don't test it <br>
: : : with ip alias) <br>
: : .................(以下省略) <br>
: <br>
: -- <br>
: -- <br>
: Rather than Love...Wealth... <br>
: or Fame... <br>
: Gave me Truth. <br>
: -Walden <br>
: ※ 修改:·eepaul 於 08月30日13:17:05 修改本文·[FROM: 202.120.224.18] <br>
※ 修改:·ysqcn 於 08月30日22:28:51 修改本文·[FROM: 211.69.197.81] <br>
: ※ 来源:·UNIX编程 www.tiaozhan.com/unixbbs/·[FROM: 202.120.224.18] <br>
发信人: scz (小四), 信区: UNP <br>
标 题: Re: 关于SO_REUSEADDR选项的疑问 <br>
发信站: UNIX编程 (2001年08月31日08:48:07 星期五), 站内信件 <br>
<br>
我们的疑问和你讲的这个基本上没有直接关系 <br>
<br>
我们的疑问仅仅是在不同IP上绑定同一个端口 <br>
和是否使用这个标志是无关的,可为什么先生要专门列出 <br>
第三种情况, <br>
<br>
<br>
【 在 ysqcn (岁月无声) 的大作中提到: 】 <br>
: 看源码得出的结论,正好可以解释下面的情况(linux下udp套接口): <br>
: udp绑定到相同的端口号(不是同一套接字绑定多次),如果同时满足下面的三个条件: <br>
: 1、其中的两个套接字绑定的网络接口相同 <br>
: 2、其中有一个套接字IP为INADDR_ANY,或者其中的两个IP相同 <br>
: 3、其中有一个套接字没有设置SO_REUSEADDR标志 <br>
: 则绑定失败,否则就成功 <br>
: (如果有不同的情况,通知我喔:-) <br>
: 下面是简要解释: <br>
: 对clown的情况,两个IP不同,有都不为INADDR_ANY,不满足第二个条件,绑定总是成功 <br>
, <br>
: 不论你设不设置SO_REUSEADDR标志。(你不妨将其中之一换为INADDR_ANY看看) <br>
: .................(以下省略) <br>
<br>
-- <br>
<br>
也许有一天,他再从海上蓬蓬的雨点中升起, <br>
飞向西来,再形成一道江流,再冲倒两旁的石壁, <br>
再来寻夹岸的桃花。然而,我不敢说来生,也不敢信来生...... <br>
※ 来源:·UNIX编程 www.tiaozhan.com/unixbbs/·[FROM: 211.167.65.123] 发信人: clo <br>
wn (梧桐叶), 信区: UNP <br>
标 题: Re: 关于SO_REUSEADDR选项的疑问 <br>
发信站: UNIX编程 (2001年08月31日08:55:38 星期五), 站内信件 <br>
<br>
他说的还是很有价值的,我虽然知道某些情况可以不使用该选项, <br>
但是他指出了,哪些情况下需要使用该选项,因此对于以后使用该选项 <br>
是有很大帮助的,最起码我们知道该选想到地用在哪些情况。 <br>
【 在 scz (小四) 的大作中提到: 】 <br>
: 我们的疑问和你讲的这个基本上没有直接关系 <br>
: 我们的疑问仅仅是在不同IP上绑定同一个端口 <br>
: 和是否使用这个标志是无关的,可为什么先生要专门列出 <br>
: 第三种情况, <br>
: 【 在 ysqcn (岁月无声) 的大作中提到: 】 <br>
: : 看源码得出的结论,正好可以解释下面的情况(linux下udp套接口): <br>
: : udp绑定到相同的端口号(不是同一套接字绑定多次),如果同时满足下面的三个条件 <br>
: <br>
: : 1、其中的两个套接字绑定的网络接口相同 <br>
: : 2、其中有一个套接字IP为INADDR_ANY,或者其中的两个IP相同 <br>
: : 3、其中有一个套接字没有设置SO_REUSEADDR标志 <br>
: .................(以下省略) <br>
-- <br>
※ 来源:·UNIX编程 www.tiaozhan.com/unixbbs/·[FROM: 202.114.1.61] 发信人: scz ( <br>
小四), 信区: UNP <br>
标 题: Re: 关于SO_REUSEADDR选项的疑问 <br>
发信站: UNIX编程 (2001年08月31日12:52:32 星期五), 站内信件 <br>
<br>
<br>
【 在 clown (梧桐叶) 的大作中提到: 】 <br>
: 他说的还是很有价值的,我虽然知道某些情况可以不使用该选项, <br>
<br>
现代server设计都会使用这个标志的 <br>
只要是准备对付第一种情况。除非不打算考虑第一种情况 <br>
<br>
<br>
: 但是他指出了,哪些情况下需要使用该选项,因此对于以后使用该选项 <br>
: 是有很大帮助的,最起码我们知道该选想到地用在哪些情况。 <br>
<br>
你在设计什么有实际价值的应用的时候不会使用这个标志?或者说使用了这个 <br>
标志给你带来了负影响?如果你没有这种负影响的例子,那是什么原因 <br>
让你还需要选择不使用这个标志呢?不是很理解。何况作为服务器,不考虑第 <br>
一种情况是不可想象的。 <br>
<br>
: 【 在 scz (小四) 的大作中提到: 】 <br>
: : 我们的疑问和你讲的这个基本上没有直接关系 <br>
: : 我们的疑问仅仅是在不同IP上绑定同一个端口 <br>
: : 和是否使用这个标志是无关的,可为什么先生要专门列出 <br>
: : 第三种情况, <br>
: : .................(以下省略) <br>
<br>
<br>
-- <br>
<br>
也许有一天,他再从海上蓬蓬的雨点中升起, <br>
飞向西来,再形成一道江流,再冲倒两旁的石壁, <br>
再来寻夹岸的桃花。然而,我不敢说来生,也不敢信来生...... <br>
※ 来源:·UNIX编程 www.tiaozhan.com/unixbbs/·[FROM: 211.167.65.123] <br>
</small><hr>
<p align="center">[<a href="index.htm">回到开始</a>][<a href="5.htm">上一层</a>][<a href="121.htm">下一篇</a>]
<p align="center"><a href="http://cterm.163.net">欢迎访问Cterm主页</a></p>
</table>
</body>
</html>
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -