亚洲av成人无遮挡网站在线观看,少妇性bbb搡bbb爽爽爽,亚洲av日韩精品久久久久久,兔费看少妇性l交大片免费,无码少妇一区二区三区

  免費(fèi)注冊 查看新帖 |

Chinaunix

  平臺 論壇 博客 文庫
最近訪問板塊 發(fā)新帖
查看: 1802 | 回復(fù): 0
打印 上一主題 下一主題

這是Linux ioctl()的bug嗎? [復(fù)制鏈接]

論壇徽章:
0
跳轉(zhuǎn)到指定樓層
1 [收藏(0)] [報告]
發(fā)表于 2007-04-13 17:02 |只看該作者 |倒序?yàn)g覽
廣東省Linux公共服務(wù)技術(shù)支持中心 顏定成

ifconfig 在Linux和Solaris下的差別

在unix系統(tǒng)下可以通過ifconfig命令來查詢和設(shè)置網(wǎng)絡(luò)接口的運(yùn)行參數(shù),在各個unix系統(tǒng)下,它的絕大多數(shù)功能是一樣的,不過今天
我發(fā)現(xiàn)了一個在Linux和Solaris下不一致的地方。那就是ifconfig的up命令。

在Solaris下執(zhí)行如下兩個命令

    #ifconfig ifname down
    #ifconfig ifname up

把ifname替換成相應(yīng)的網(wǎng)絡(luò)接口的名稱。這兩個名稱執(zhí)行完以后,相應(yīng)的網(wǎng)絡(luò)接口的網(wǎng)絡(luò)連接不會發(fā)生變公。這就是說ifconfig的
“up”命令完成的剛好是“down”命令相反的功能,這個是正確的。但是在Linux下就不一樣了,在Linux下同樣執(zhí)行上面兩條命令后,
相應(yīng)網(wǎng)絡(luò)接口的網(wǎng)絡(luò)連接就會產(chǎn)生差異了。比如我的機(jī)子上只有一個連接的接口eth0,執(zhí)行如下操作:

    #ifconfig eth0 down
    #ifconfig eth0 up

這時候再來連接www.google.com就會連不上,ping也ping不通。但是如果ping某一個外網(wǎng)的IP地址(比如66.249.89.99)就能ping
得通。但是在Solaris下不光能ping得通IP地址,還能ping通域名并且能通過域名進(jìn)行連接。如果把上面的第二條命令

    #ifconfig eth0 up

換成下面的命令

    #ifup eth0

那么在Linux下命令執(zhí)行前后的網(wǎng)絡(luò)連接就是一致的。從這里可以推斷出在Linux下完成與ifconfig eth0 down命令相反功能的命令
是ifup eth0 而不是ifconfig eth0 up。這可能是Linux下ifconfig命令實(shí)現(xiàn)得不完善的一個地方。

從源碼分析發(fā)現(xiàn)兩個系統(tǒng)下的ifconfig的up命令都是通過調(diào)用ioctl的SIOCSIFFLAGS命令來完成這個工作的。我也寫了一個測試
ioctl()函數(shù)的程序來測試,發(fā)現(xiàn)在Linux下通過ioctl()的SIOCSIFFLAGS命令來設(shè)置網(wǎng)口的IFF_UP標(biāo)志后,只能夠通過IP地址訪
問遠(yuǎn)程主機(jī),并不能通過域名訪問遠(yuǎn)程主機(jī)。但是在Solaris下這是沒問題的。難道這是Linux下的ioctl()函數(shù)的bug引起的?

附:相關(guān)的測試系統(tǒng)是RHEL update 3,Solaris 10
您需要登錄后才可以回帖 登錄 | 注冊

本版積分規(guī)則 發(fā)表回復(fù)

  

北京盛拓優(yōu)訊信息技術(shù)有限公司. 版權(quán)所有 京ICP備16024965號-6 北京市公安局海淀分局網(wǎng)監(jiān)中心備案編號:11010802020122 niuxiaotong@pcpop.com 17352615567
未成年舉報專區(qū)
中國互聯(lián)網(wǎng)協(xié)會會員  聯(lián)系我們:huangweiwei@itpub.net
感謝所有關(guān)心和支持過ChinaUnix的朋友們 轉(zhuǎn)載本站內(nèi)容請注明原作者名及出處

清除 Cookies - ChinaUnix - Archiver - WAP - TOP