網路程式設計 1

2021-07-12 04:12:56 字數 680 閱讀 7214

1.前言

公司要為別的公司提供伺服器防護,採用本地環迴,節點**的方法實現對伺服器真實ip進行隱藏。但是有乙個問題:我節點端要建立乙個埠接收對映資料和保活資料,採用固定埠的話,攻擊者很容易通過掃瞄埠來獲取我較多的節點,進行攻擊

2.解決

這裡採用的是通過節點ip來生成乙個隨機埠,客戶端和節點通過這個隨機埠來進行資料通訊

3.**片段

由ip生成隨機埠的乙個演算法

std::string generateport(const std::string &strvalue)

nsecond %=

10; nthird %=

10; nfourth %=

10; char szport[64] = ;

sprintf(szport, "%d%d%d%d", nfirst, nsecond, nthird, nfourth);

strport = szport;

}return strport;

}

4.備註

1.但是在實際中發現生成的隨機埠可能是木馬埠,被360直接誤報,這是很糾結的,後續再進行優化

2.由ip生成埠部分演算法不能保證所有ip產生的埠都是唯一的,但是可以保證大部分ip產生的埠都不一樣,後續還要繼續進行優化處理

網路程式設計 1

1.套接字位址結構 套接字程式設計需要指定套接字的位址作為引數,不同的協議族有不同的位址結構定義方式。這些位址結構通常以sockaddr 開頭,每乙個協議族有乙個唯一的字尾,例如對於乙太網,其結構名稱為sockaddr in。1.1 通用套接字位址結構 套接字位址結構 struct sockaddr...

網路程式設計1

tcp ip四層模型 應用層 telent,ftp和e mail等 傳輸層 tcp udp 網路層 ip,icmp和igmp 鏈路層 裝置驅動程式及介面卡 如果兩台計算機在不同的網段中,那麼資料從一台計算機到另一台計算機傳輸過程中要經過乙個或多個路由器 鏈路層之下還有物理層,指的是電訊號的傳遞方式,...

網路程式設計序列1 理解網路程式設計

常用的tcp ip協議的三種套接字型別 流套接字 tcp協議 資料報套接字 udp協議 原始套接字 ip icmo協議 區別在於 原始套接字可以讀寫核心沒有處理的ip資料報,而流套接字只能讀取tcp協議的資料,資料報套接字只能讀取udp協議的資料。tcp transmission control p...