最近寫了乙個程式,涉及到在windows下執行的乙個程式到執行在linux下的伺服器取出資料。一開始還真沒有適應過來。下面說說我遇見的一些問題。
1、windows下connect不成功。
最開始也是不清楚**出錯,程式莫名其妙就在這個connect斷下,而且會花費很長的時間在connect這一句停留很長時間才會跳到下一句。於是找錯。函式getlasterror。輸出的是10065.10065的意思就是主機不可達。於是我網上搜找了一番。發現問題所在,防火牆的問題。
我記不得有好多問題是這個原因了。記得以前iscsa也是有這個問題。
關閉防火牆,service iptables stop.然後編譯,connect成功,而且速度與上次是不同乙個級別的。
2、send資料到伺服器成功,但是伺服器傳送資料過來卻出錯。同樣的找錯誤,getlasterror。發現是10054.網上瀏覽一番,發現是伺服器關閉了服務。伺服器**部分是這樣的:
void worker(**)
我覺得已經發出去了,然後關閉的connfd,在linux下面寫乙個客戶端,這樣是沒有這樣的問題的,可以很好的接受到資料。但是在windows下不管進行多少次實驗,就是10054那個錯誤。最後為了看到一次效果,就把close(connfd)注釋掉,這樣就可以正常執行了,這樣肯定是不成的,connfd必須關閉。 Linux網路程式設計
linux網路程式設計 當然,我們現在,將要開始編寫的第乙個網路程式,雖然非常簡單,但是卻可以很 清楚的說明大部分編寫網路程式需要的基本概念,好了先讓我們看看網路程式的tcp服 務器端的編寫步驟 1.和伺服器的步驟一樣。2.通過設定套介面位址結構,我們說明,客戶端要與之通訊的伺服器的ip位址和 埠。...
linux 網路程式設計
當然,我們現在,將要開始編寫的第乙個網路程式,雖然非常簡單,但是卻可以很 清楚的說明大部分編寫網路程式需要的基本概念,好了先讓我們看看網路程式的tcp服 務器端的編寫步驟 現在讓我們來看看網路程式客戶端的程式設計步驟 以上的步驟,是比較普遍的,我們可以從中看出,編寫網路程式是很有意思的,同 時,也不...
linux 網路程式設計
套接字程式設計 struct sockaddr unsigned short sa family 位址協議,ipv4 tcp ip af inet,ipv6 af inet6 char sa data 14 14位元組的位址協議 struct sockaddr in unsigned short s...