iT邦幫忙

鐵人檔案

第 12 屆 iThome 鐵人賽
回列表
Software Development

那些年還給老師的TCP/IP五層結構 - 用Python進行網路封包分析 系列

這個系列文章主要和計算機網路相關,之前大學上課,學計算機網路像死記硬背,頂多再用個wireshard做封包分析,這次想利用30天鐵人賽的機會,我們不再使用wireshark了,我們做一個wireshark!做才能深入了解TCP/IP的原理呀!

鐵人鍊成 | 共 30 篇文章 | 84 人訂閱 訂閱系列文 RSS系列文
DAY 21

Day21 自幹TCP三向交握(1)

在Day13和Day14介紹了TCP的封包結構,TCP是連接導向的協議,所以在建立連線前需要和對方確認和對方的通信收發是正常的,在斷開連接也需要和對方確認沒有額...

2020-10-01 ‧ 由 kaichiaboy 分享
DAY 22

Day22 自幹TCP三向交握(2)

上一回說了這三個函數_buildEthHeader()、 _buildIPHeader()、 _buildTCPHeader(tcp_len, seq, ack...

2020-10-02 ‧ 由 kaichiaboy 分享
DAY 23

達標好文 Day23 題外話 - 如何利用TCP四向交握取得鄰居的Wi-Fi密碼

Wifi的協議裡的常見加密方式有WEP和WPA/WPA2,WEP在2003年發現安全性不夠,所以逐漸被淘汰,現在看到的router AP幾乎都是使用WPA/WP...

2020-10-03 ‧ 由 kaichiaboy 分享
DAY 24

Day24 自幹TCP四向揮手(1)

四向揮手顧名思義,就是要和TCP連線說byebye了,為什麼要說byebye呢?client需求結束直接斷開不就好了嗎?如果client直接斷開,不和serve...

2020-10-04 ‧ 由 kaichiaboy 分享
DAY 25

Day25 自幹TCP四向揮手(2)

前面聊到四向揮手的過程,接下來是demo的部分,和三向交握一樣,需要nc指令在HostA啟動TCP的servernc -l 172.17.0.5 80 在Hos...

2020-10-05 ‧ 由 kaichiaboy 分享
DAY 26

Day26 自幹DNS server(1)

走過最難的TCP,接下來是比較簡單的環節了,這兩天,我們來實作一個基於UDP的DNS server 還是一樣,我們要從第二層構建header,但是和前幾天的TC...

2020-10-06 ‧ 由 kaichiaboy 分享
DAY 27

Day27 自幹DNS server(2)

接下來我們利用_buildEthHeader、_buildIPHeader和_buildUDPHeader來建構一個完整的DNS server首先,在監聽到pa...

2020-10-07 ‧ 由 kaichiaboy 分享
DAY 28

Day28 自幹Ping server(1)

很快就來到最後一個實作了,自幹一個ping Server,分散式的應用越來越流行,同一個應用不再是靠共享記憶體,而是靠網路線串接各台機器,那分散式的基礎設施靠什...

2020-10-08 ‧ 由 kaichiaboy 分享
DAY 29

Day29 自幹Ping server(2)

接下來是實驗的環節了,在server端先啟動ping server #> python ping.py 在client端發送ping ># pin...

2020-10-09 ‧ 由 kaichiaboy 分享
DAY 30

Day30 總結

不知不覺就這樣寫了30天,第一天很痛苦,第二天更痛苦,第三天之後就寫上癮了,沒有這個鐵人賽我都不知道原來寫作挺有趣的,而且寫的過程可以讓自己的知識體系更加鞏固。...

2020-10-10 ‧ 由 kaichiaboy 分享