socket开发中INADDR_ANY的含义是什么?
生活随笔
收集整理的這篇文章主要介紹了
socket开发中INADDR_ANY的含义是什么?
小編覺得挺不錯的,現(xiàn)在分享給大家,幫大家做個參考.
"將sin_addr設(shè)置為INADDR_ANY"的含義是什么?
INADDR_ANY 轉(zhuǎn)換過來就是0.0.0.0,泛指本機的意思,也就是表示本機的所有IP,因為有些機子不止一塊網(wǎng)卡,多網(wǎng)卡的情況下,這個就表示所有網(wǎng)卡ip地址的意思。 比如一臺電腦有3塊網(wǎng)卡,分別連接三個網(wǎng)絡(luò),那么這臺電腦就有3個ip地址了,如果某個應用程序需要監(jiān)聽某個端口,那他要監(jiān)聽哪個網(wǎng)卡地址的端口呢?如果綁定某個具體的ip地址,你只能監(jiān)聽你所設(shè)置的ip地址所在的網(wǎng)卡的端口,其它兩塊網(wǎng)卡無法監(jiān)聽端口,如果我需要三個網(wǎng)卡都監(jiān)聽,那就需要綁定3個ip,也就等于需要管理3個套接字進行數(shù)據(jù)交換,這樣豈不是很繁瑣?所以出現(xiàn)INADDR_ANY,你只需綁定INADDR_ANY,管理一個套接字就行,不管數(shù)據(jù)是從哪個網(wǎng)卡過來的,只要是綁定的端口號過來的數(shù)據(jù),都可以接收到。總結(jié)
以上是生活随笔為你收集整理的socket开发中INADDR_ANY的含义是什么?的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 大量的QT控件及示例发放
- 下一篇: 使用VS2013编译Lua5.3.2