NAT hoạt động như thế nào với các gói UDP đến từ IP không xác định


8

Xin lỗi trước cho câu hỏi tương đối không và nếu điều này không đúng chủ đề ở đây (tôi không chắc chắn ...)

Tình huống là tôi có một máy khách và máy chủ UDP bị ràng buộc vào cùng một cổng.

Sự hiểu biết của tôi về NAT là các gói UDP đi từ máy khách đến một điểm cuối cụ thể sẽ dẫn đến một mục tạm thời vào bảng NAT ánh xạ cổng nguồn tới điểm cuối đích. (Thê nay đung không?)

Điều này cũng có nghĩa là nếu một điểm cuối chưa được biết sẽ bắt đầu giao tiếp UDP với máy chủ của tôi đến cùng một cổng mà gói UDP sẽ vượt qua? Có bất kỳ lý do tại sao NAT sẽ ngăn chặn điều này? NAT thậm chí còn tìm cách chặn / cho phép các gói đến này?


1
Xin chào Sentinel, chào mừng bạn đến với NESE. Câu trả lời sẽ phụ thuộc vào loại NAT được cấu hình - nghe có vẻ như những gì bạn đang đề cập đến là một Dynamic PAT (mặc dù các nhà cung cấp khác nhau gọi nó là những thứ khác nhau ). Câu trả lời này cho một câu hỏi và trả lời khác cung cấp thêm chi tiết về lý do tại sao Dynamic PAT là một hướng duy nhất và sẽ không cho phép điểm cuối "chưa được biết" bắt đầu kết nối với máy chủ của bạn (TCP hoặc UDP). Hình minh họa thứ ba đặc biệt có vẻ liên quan đến câu hỏi của bạn.
Eddie

@Eddie Rất cám ơn thông tin hữu ích của bạn. Tôi nghĩ vì lợi ích của những người có thể đến đây trong tương lai, sẽ là một ý tưởng tốt để thêm điều này như một câu trả lời.
Sentinel

Nếu bạn cảm thấy đó sẽ là một câu trả lời thỏa đáng hơn những câu được đăng, tôi có thể viết một bài khác. Sự lựa chọn của bạn =).
Eddie

1
Eddie đã viết Câu trả lời sẽ phụ thuộc vào loại NAT được cấu hình : @Sentinel Một số loại NAT được liệt kê trên Wikipedia: en.wikipedia.org/wiki/iêu Rõ ràng là "NAT hình nón đầy đủ" sẽ phản ứng khác với "NAT đối xứng" ở đây.
Martin Rosenau

@MartinRosenau Cảm ơn bạn. Có vẻ như tôi sẽ dành nhiều thời gian để nghiên cứu về NAT. Tôi thấy thật kỳ diệu khi các chương trình như BitTorrent thậm chí hoạt động hoàn toàn trong lĩnh vực lừa đảo mạng này.
Sentinel

Câu trả lời:


6

NAT thông thường hoạt động bằng cách tạo ánh xạ cho mỗi cặp máy chủ giao tiếp dưới dạng 5 tuple (giao thức, địa chỉ bên trong, cổng bên trong, địa chỉ bên ngoài, cổng bên ngoài). Thông thường mục này được thêm vào bảng bởi gói gửi đi đầu tiên.

Nếu máy chủ bên ngoài chưa biết bên ngoài gửi gói UDP, sẽ không có mục nào trong bảng cho nó và do đó, thiết bị NAT thường sẽ loại bỏ nó, tùy thuộc vào khả năng và cấu hình của nó.

Loại NAT này thường được gọi là "NAT quá tải" hoặc "dịch địa chỉ cổng" để phân biệt với các giống khác. Một mô tả hay là http://www.ciscozine.com/nat-and-pat-a-complete-explanation/

Nếu bạn muốn chấp nhận các gói đến trên máy chủ của mình, bạn sẽ cần thiết lập một mục nhập tĩnh trên thiết bị NAT cho máy chủ đó trên cổng đó. Thực tế, điều này nói rằng các mục có thể được thêm vào bảng NAT bằng các gói đến.

Các chi tiết phụ thuộc vào thiết bị và phần mềm.


OK tôi thấy cảm ơn bạn. Tôi sẽ để lại nội dung này trong một thời gian trước khi đánh dấu là câu trả lời được chấp nhận sau đó, để cho phép các ý kiến ​​khác nếu có. Tôi ngạc nhiên khi có rất nhiều phần mềm P2P dựa vào khám phá UDP nhưng dường như không áp dụng các chiến lược liên quan đến NAT, ngoài UPnP
Sentinel

3

Như jonathanjo chỉ ra, mục nhập bảng UDP NAPT sẽ bao gồm nhiều hơn một số cổng UDP (với NAPT, có các bảng riêng cho UDP, TCP và ICMP và cổng UDP 12345 khác với cổng TCP 12345, trong khi ICMP không 't sử dụng cổng nhưng sử dụng ID truy vấn thay vì số cổng).

Nếu không có địa chỉ IP bên ngoài cụ thể trong mục nhập bảng NAPT, thiết bị NAPT sẽ cho rằng gói tin được định sẵn cho chính nó vì đây là thiết bị thực sự được đánh địa chỉ với địa chỉ IP đến. Nếu bản thân thiết bị NAPT không mở cổng UDP, nó sẽ bỏ gói, nhưng điều đó thực sự phụ thuộc vào HĐH của thiết bị NAPT và cách cấu hình.

Đây là một lý do lớn mà NAPT không bảo mật. Bạn thực sự cần một tường lửa, quá. Tường lửa sẽ mặc định chặn tất cả các kết nối có nguồn gốc bên ngoài, bảo vệ chính thiết bị NAPT. Nếu thiết bị NAPT bị xâm nhập, nó có quyền truy cập đầy đủ vào mạng bên trong và kẻ tấn công sau đó có toàn quyền truy cập vào mạng bên trong, ngay cả khi đó là mạng riêng.


Bạn có thể giúp với một điều? Đối với các bộ định tuyến gia đình điển hình, tại sao 'cổng chuyển tiếp' (pat tĩnh, napt tĩnh?) Không dẫn đến lưu lượng truy cập khởi tạo theo quy tắc đó? Dường như họ bỏ qua quy tắc và tiếp tục với các mục động. Đây có phải là chuẩn mực?
Sentinel

1
Chuyển tiếp cổng là một quy tắc cho lưu lượng truy cập bên ngoài để cho phép các máy chủ bên ngoài bắt đầu kết nối đến máy chủ bên trong được chỉ định trong quy tắc, không dành cho lưu lượng truy cập bên trong. Về cơ bản, đây là một mục tĩnh trong bảng NAPT cho một trong ba giao thức có thể sử dụng NAPT (TCP, UDP, ICMP). Xem RFC 2663, Thuật ngữ và cân nhắc về dịch thuật địa chỉ mạng IP (NAT) .
Ron Maupin
Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.