On the way to become a senior Ruby developer
network tcpip ip basic packet – It costs 8 mins to read
Cách một gói tin được tạo ra và truyền đi trên mạng Internet.
Đang xem: Source mac address là gì
Một gói tin được truyền đi giữa các máy tính trong mạng LAN/WAN hay giữa Client-Server trên mạng Internet là nhờ vào bộ giao thức TCP/IP. Nếu như bạn không biết TCP/IP, Các tầng (Layer) của TCP/IP, TCP, UDP là gì, IP là gì… thì có thể tham khảo nội dung bài viết này – Tổng quan về TCP/IP.
Tại Máy tính
Tại Lớp Application
Lớp Application là lớp nhanh nhất có thể với những người dùng, từ đây, tài liệu, yêu cầu từ người dùng sẽ tiến hành sử dụng để tạo thành một khối Data lớn theo khuôn dạng nhất định.
Ví dụ khi nhập địa chỉ một website vào trình duyệt, thì một yêu cầu HTTP GET sẽ tiến hành tạo ra, dựa trên những thông tin mà người dùng nhập.
Tại Lớp Transport
Tại lớp Transport, tài liệu sẽ tiến hành chia nhỏ thành các khối tài liệu có kích thước phù hợp, sau này được đóng gói lại, một Header được thêm vào nhằm theo dõi luồng tài liệu và tập hợp tài liệu tại máy đích. Những gói tin nhỏ này gọi là các Segment.
Có rất nhiều ứng dụng, dịch vụ chạy trên mỗi host, nên để chuyển xác thực tài liệu cho những ứng dụng dịch vụ, lớp Transport gán cho từng application một định danh gọi là port number. Mọi ứng dụng muốn truy cập mạng đều được gán port number, port number này là duy nhất trên host đó. Ví dụ một số port number thông dụng:
HTTP: 80 FTP: 21 DNS: 53 SMTP: 25
Tùy theo ứng dụng khác nhau, yêu cầu độ tin cậy khác nhau, lớp Transport sử dụng giao thức TCP hay UDP cho phù hợp:
TCP: là giao thức tin cậy, đảm bảo cho tất vả tài liệu đều được chuyển tới đích đúng và đủ. UDP: là giao thức đơn giản, không cung cấp bất kỳ sự tin cậy nào.Tại lớp Network
Tại đây, các Segment sẽ tiến hành gắn thêm một header gọi là IP Header, gồm có hai thông tin đây là địa chỉ Source IP và Destination IP. Các gói tin lúc này được gọi là Datagram.
Source IP là địa chỉ IP của máy gửi, địa chỉ này còn có thể được đặt bởi người dùng hay cấp phép động qua giao thức DHCP. Giao thức DHCP nói một cách đơn giản là lúc một máy tính được kết nối vào trong 1 mạng mà địa chỉ IP của nó không được đặt, DHCP Server (Setup trên Router) sẽ lấy một địa chỉ IP sẵn có trong “bồn” địa chỉ IP dùng để làm cấp phép cho những client, cấp phép cho DHCP client (máy tính cần cấp phép địa chỉ IP). DHCP là giao thức của lớp Application.
Địa chỉ IP máy đích có thể nhập trực tiếp hay được xác định qua giao thức DNS. Nhập trực tiếp ví dụ như thay vì nhập sentayho.com.vn ta có thể nhập trực tiệp địa chỉ http://118.69.249.158/ vào trình duyệt, kết quả đều dẫn tới website tìm kiếm này. Vậy nếu ta không biết xác thực địa chỉ IP cần gửi tới, thì trước nhất, máy tính sẽ dò tìm trong DNS cache, nơi lưu những thông tin về những địa chỉ đã truy cập, ta có thể xem thông tin DNS Cache bằng câu lệnh ipconfig /displaydns trong Command Prompt:
Nếu không tìm thấy IP tương ứng với tên miền cần tìm, một DNS Request sẽ tiến hành gửi tới DNS server để xử lý. DNS server sẽ phản hồi những thông tin cấp thiết để máy tính sử dụng, những thông tin sẽ tiến hành lưu trái lại vào DNS cache để sử dụng vào lần sau.
Tại lớp Data link và Physical
Để một gói tin có thể gửi tới đích, tất cả chúng ta cần thêm một loại địa chỉ nữa đó là địa chỉ MAC hay địa chỉ vật lý. Địa chỉ này là duy nhất cho mọi thiết bị. Một header lại được thêm vào Datagram, hai thông tin đây là Source MAC và Destination MAC. Các gói tin lúc này được gọi là Frame.
Source MAC đây là địa chỉ MAC của máy gửi, ta có thể kiểm tra địa chỉ MAC của máy tính bằng câu lệnh getmac trong Command Prompt.
Để xác định địa chỉ Destination MAC dựa vào Destination IP, máy tính sẽ từ động tìm kiếm trong ARP cache. Ta có thể xem thông tin ARP cache bằng phương pháp sử dụng câu lệnh arp -a trong Command Prompt.
Nếu không tìm thấy Destination MAC tương ứng với Destination IP, máy tính sẽ sử dụng giao thức ARP. Một gói tin gọi là ARP Request đính kèm Destination IP sẽ tiến hành gửi Broadcast tới tất cả những máy trong mạng chứa máy nguồn, một số trường hợp xẩy ra như sau:
Nếu Destination IP là địa chỉ IP cục bộ của mạng đó, máy tính mang địa chỉ IP này sẽ trả lời với địa chỉ MAC của nó về cho máy gửi ARP Request. Vậy Destination MAC ở đây đây là địa chỉ MAC của máy tính cùng mạng với máy gửi. Nếu Destination IP là địa chỉ IP của mạng khác, Router chứa mạng này sẽ thấy ra điều đó và trả lời với địa chỉ MAC của router nên Destination MAC ở đây sẽ là địa chỉ MAC của router. Nếu Destination IP là địa chỉ IP của mạng khác và địa chỉ Default Gateway cũng như Subnetmask đã được đặt, máy tính sẽ sử dụng thông tin này để xác định được Gateway và gửi gói tin đến đây. Destination MAC ở đây sẽ là địa chỉ của Gateway, thường sẽ là một router.
Xem thêm: Ý Nghĩa Tên Bảo Ngọc Có Ý Nghĩa Gì, Tốt Hay Xấu? Bảo Ngọc Nghĩa Là Gì
Destination MAC sau thời điểm được xác định sẽ lưu lại vào ARP Cache cho lần sử dụng tiếp theo.
Sau khoản thời gian xác định đầy đủ địa chỉ Source MAC và Destination MAC, các Frame lúc này sẽ tiến hành đưa xuống lớp Physical, được mã hóa và chuyển đổi thành các tín hiệu vật lý thích hợp, để mang lên đường truyền.
==Các lệnh tương ứng trên Linux là gì?==
Khi thoát ra khỏi máy tínhTại Switch
Các máy tính trong cùng một mạng thường sẽ tiến hành tập hợp lại thông qua Switch. Vậy nên điểm đến lựa chọn tiếp theo của frame sẽ là một port Switch, tại đây, frame được đặt trong một hàng đợi, mỗi frame có mức ưu tiên khác nhau và switch dựa vào điều này để xử lý các frame quan trọng trước.
Tại đây, Switch sẽ mở gói tin ra và đọc địa chỉ Source MAC, lưu vào MAC Address table, tại đây lưu số port và địa chỉ MAC kết nối trực tiếp với port này, tiếp theo đọc Destination MAC của gói tin so sánh với bảng MAC Address table của switch và có những hành động tương ứng:
Nếu Destination MAC là địa chỉ tồn tại trong MAC address table, switch sẽ gửi gói tin qua port tương ứng. Nếu Destination MAC là địa chỉ không tồn tại trong MAC Address table hoặc là địa chỉ Broadcast, switch sẽ gửi gói tin ra tất cả những port trừ cổng nhận vào. Nếu Destination MAC trùng với Source MAC, frame sẽ bị drop – không gửi ra bất kỳ port nào.
Ví dụ bảng Mac Address Table của một Switch.
Như vậy, nếu máy nhận nằm trong cùng một mạng với máy gửi, thì chỉ có thông qua switch, frame đã có thể được chuyển tới đích. Trường hợp máy nhận nằm khác mạng với máy gửi. Frame sẽ tiến hành chuyển tiếp tới Router để xử lý.
Tại Router
Trước hết, Router sẽ gỡ bỏ header của lớp Data Link (gồm có Source MAC và Destination MAC). Tiếp theo, Router đọc thông tin lớp Network (Gồm có Source IP và Destination IP).
Router sử dụng Destination IP, so sánh với Routing Table. Routing Table chứa list các lối đi được sử dụng để chuyển gói tin và interface đầu ra tương ứng. Các lối đi này còn có thể được gán tĩnh bởi người quản trị Router đấy, hoặc có thể được thêm vào qua các giao thức định tuyến như OSPF, EIGRP, RIP, IS-IS….. Các giao thức này nhằm tìm ra lối đi ngắn nhất đến mạng đích và lưu vào Routing Table.
Ví dụ bảng Routing Table của một Router.
Nếu không tìm được đường đi nhé tương ứng với địa chỉ mạng của Destination IP, hoặc trường TTL trong IP Header (sẽ giảm dần qua mỗi router, dùng để làm tránh trường hợp gói tin bị loop vô tận) bằng 0, gói tin sẽ bị drop và Router gửi thông tin “Destination host unreachable” trái lại cho máy gửi.
Nếu tìm được lối đi tương ứng với địa chỉ mạng của Destination IP, Router thêm lại header chứa Source MAC – đây là địa chỉ MAC của interface tương ứng với lối đi tìm được và Destination MAC – là địa chỉ của MAC của interface Router tiếp theo. Như vậy, trong suốt quá trình gửi đi, Source IP và Destination IP luôn luôn được giữ nguyên (trừ trường hợp sử dụng NAT, VPN) còn Source MAC và Destination MAC sẽ thay đổi mỗi một khi qua Router.
Xem thêm: zip code vietnam ios
Quá trình trên sẽ tiến hành tái diễn cho đến lúc Router phát hiện ra Destination IP nằm chung mạng với một Interface của Router. Khi đó Router cũng sẽ sử dụng giao thức ARP để xác định địa chỉ MAC của máy đích, và dùng nó để làm Destination MAC và gửi gói tin đến máy đích.
Nguồn: sentayho.com.vn/articles/read/127/hanh-trinh-cua-mot-goi-tin
sentayho.com.vn is published by Dương Vì Phát. Using Jekyll and Cayman theme.