[問題] Socket讓兩台電腦對連
開發平台(Platform): (Ex: Win10, Linux, ...)
windows 10
編譯器(Ex: GCC, clang, VC++...)+目標環境(跟開發平台不同的話需列出)
Visual Studio 2013 C++
額外使用到的函數庫(Library Used): (Ex: OpenGL, ...)
問題(Question):
電腦自己測試可以傳送文字,但兩台電腦卻無法連線
餵入的資料(Input):
Server:一開始輸入自身的ip,之後進入監聽
Client:一樣輸入ip,之後會收到來自server的一串文字,然後可以自行輸入文字來傳送給server
預期的正確結果(Expected Output):
使兩台電腦對連
錯誤結果(Wrong Output):
原先127.0.0.1都可以正常在電腦內部使用,但如果server的程式給A電腦,並且輸入A電腦自己的IP
(IP是由:http://dir.twseo.org/ip-check.php 查到的),那他會整個跳過bind,listen,accpet,
並且說自己已經收到Client的連線了,重點是client根本還沒開起
程式碼(Code):(請善用置底文網頁, 記得排版,禁止使用圖檔)
Server:https://pastebin.com/NhpJ2KBS
Client:https://pastebin.com/Yp22gsNe
補充說明(Supplement):
也許這問題很菜,但我完全不知道問題出在哪QQ
--
※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 101.12.149.192
※ 文章網址: https://www.ptt.cc/bbs/C_and_CPP/M.1525882330.A.B05.html
→
05/10 00:42,
7年前
, 1F
05/10 00:42, 1F
1234 htons那裏
※ 編輯: ponwar87123 (101.12.149.192), 05/10/2018 00:49:53
推
05/10 01:48,
7年前
, 2F
05/10 01:48, 2F
→
05/10 01:59,
7年前
, 3F
05/10 01:59, 3F
→
05/10 02:00,
7年前
, 4F
05/10 02:00, 4F
→
05/10 07:49,
7年前
, 5F
05/10 07:49, 5F
→
05/10 07:49,
7年前
, 6F
05/10 07:49, 6F
→
05/10 07:49,
7年前
, 7F
05/10 07:49, 7F
→
05/10 11:34,
7年前
, 8F
05/10 11:34, 8F
→
05/10 11:34,
7年前
, 9F
05/10 11:34, 9F
→
05/10 12:13,
7年前
, 10F
05/10 12:13, 10F
→
05/10 12:16,
7年前
, 11F
05/10 12:16, 11F
→
05/10 12:16,
7年前
, 12F
05/10 12:16, 12F
剛剛測試後可以了,應該是IP的原因,我簡單說一下解決方法
原本的問題是,我的A電腦是接乙太網路,B電腦連A電腦所開的熱點,A電腦用ipconfig /all查出來的都是192.168.xx.xx這應該都是內部的ip
所以我去查ip網查ip,並使用那組ip會產生我這篇文章的錯誤
所以我剛剛就把A電腦的乙太切掉,然後用我的手機開wifi給A B兩台電腦連,然後查A電腦的ipconfig /all
發現終於有一組不是192.168.blablabla了,於是我用server的程式輸入這組,然後就停留在waiting等我開client了~
結論,解決方法是換網路Orz
※ 編輯: ponwar87123 (101.12.148.140), 05/10/2018 12:33:55
→
05/10 13:30,
7年前
, 13F
05/10 13:30, 13F
→
05/10 13:31,
7年前
, 14F
05/10 13:31, 14F
→
05/10 13:40,
7年前
, 15F
05/10 13:40, 15F
→
05/10 13:41,
7年前
, 16F
05/10 13:41, 16F