
在我正在編寫的程式之一中,我需要在網路上找到一些主機。我不知道會有多少個,而且網路可能比 C 類還要大。
有人建議我研究一下MAC層廣播,但是當我透過Google搜尋時並沒有太多資訊。誰能解釋一下這是如何工作的或我在哪裡可以找到有關此的更多資訊?
答案1
在網路中,有 OSI 模型的各個層:
- 身體的
- 資料鏈路(MAC層)
- 網路(IP層)
- 傳輸(TCP層)
- ETC。
資料鏈結層和網路層都被路由器分成段。這表示您可以透過第2 層或第3 層向VLAN 上(通常在同一子網路中)的所有主機進行廣播。 .1.0/ 24 您可以使用下列方法之一發送將廣播到所有 4 台電腦的資料包:
- 第 2 層:將訊框傳送到 mac 位址 ff:ff:ff:ff:ff:ff
- 第 3 層:將 IP 封包傳送至 IP 位址 192.168.1.255
如果您打算使用 TCP 或 UDP,我會選擇第 3 層廣播。如果您打算連接到沒有 IP 位址的計算機,請選擇第 2 層。
需要明確的是,您將無法使用廣播資料包來尋找不同子網路上的主機。為此,您需要一個中央伺服器或類似多播的東西,所有路由器都必須支援並啟用它們。