Có cách nào để luôn sử dụng cùng một địa chỉ Teredo IPv6 không?


4

Một trong những máy tính của tôi nằm trên ISP chỉ có IPv4 nên tôi đang sử dụng miredo để có địa chỉ IPv6. Bây giờ tôi cần truy cập máy tính này từ xa với IPv6. (Tôi không thể sử dụng IPv4 ở đây vì nó nằm sau NAT I và không thể thêm chuyển tiếp cổng mới.) Vấn đề là tôi không thể thêm bản ghi DNS AAAA vì một phần địa chỉ IP thay đổi ngẫu nhiên mỗi khi máy tính kết nối với mạng.

Vì vậy, câu hỏi của tôi là: có cách nào để luôn sử dụng cùng một địa chỉ IP với Teredo không?

Câu trả lời:


2

Địa chỉ IP Teredo phụ thuộc vào một số điều theo Wikipedia .

Trước hết, nó phụ thuộc vào địa chỉ IPv4 của bộ định tuyến. Nếu đó là đối tượng để thay đổi, bạn có một vấn đề.

Thứ hai, nó phụ thuộc vào cổng nguồn được sử dụng bởi Teredo, có thể được dịch và thay đổi bởi thiết bị NAT. Nếu thiết bị NAT của bạn không bảo vệ cổng nguồn được sử dụng bởi các ứng dụng ở bên trong, bạn có thể có thể có được điều này là không thay đổi. Nếu bạn đang ở trên Windows, tùy chọn "clientport" cho Teredo có thể hữu ích. Xem bài viết này.

Câu trả lời ngắn gọn: Bạn có thể có thể khiến nó trở nên giống nhau hầu hết thời gian, nhưng số dặm của bạn có thể thay đổi đáng kể. Có khả năng, bạn sẽ không thể có được điều này đáng tin cậy vì thiết bị NAT có thể xử lý cổng nguồn của bạn. Bạn có thể ngăn chặn điều đó bằng cách thiết lập cổng chuyển tiếp trên tường lửa của bạn ... nhưng bạn đã không thể làm điều đó ... vì vậy ...

Một tùy chọn tốt hơn có thể là thiết lập máy khách DNS động, giả sử bạn có thể tìm thấy một địa chỉ sẽ xuất bản địa chỉ IPv6 của giao diện teredo.


DDNS có lẽ là cần thiết trong mọi trường hợp. Một giải pháp khác là có được một đường hầm thứ 6 với một trong những nhà cung cấp cung cấp chúng miễn phí. Bạn có thể lấy số cố định / 64 hoặc thậm chí a / 48. Một vấn đề khác là điều mở rộng quyền riêng tư, nhưng điều đó có thể được giải quyết. Tôi thấy rằng nhiều người nghĩ rằng họ đang sử dụng ISP chỉ có IPv4 thực sự có thể nhận IPv6 từ nhà cung cấp của họ, nhưng vấn đề thực sự là bộ định tuyến của họ.
Ron Maupin

1

Rõ ràng, kể từ khi RFC 5991 , một số phần của địa chỉ IPv6 luôn là ngẫu nhiên để làm cho nó không thể dự đoán được.

Vì vậy, giải pháp đơn giản nhất đối với tôi là sử dụng dịch vụ DNS động hỗ trợ IPv6 như dynv6.com.


Tôi cũng đã sử dụng một dịch vụ DNS động.
Rudloff

1

Có, có thể làm điều đó với giao thức Teredo. Nhưng nó yêu cầu mã sửa đổi trên cả máy khách Teredo và máy chủ Teredo.

Để giải thích lý do tại sao nó vẫn có thể được coi là cùng một giao thức một khi cả máy khách và máy chủ đã được sửa đổi, trước tiên tôi phải giải thích các thành phần khác liên quan đến giao tiếp là gì.

Cơ bản về Teredo

Bốn nút mạng quan trọng trong giao tiếp sử dụng giao thức Teredo là:

  • Khách hàng của Teredo
  • Máy chủ Teredo (được chọn bởi khách hàng)
  • Chuyển tiếp Teredo (được chọn bởi nút IPv6 riêng)
  • Nút IPv6 riêng

Cuối cùng, máy khách Teredo và nút IPv6 riêng muốn trao đổi các gói IPv6. Các máy chủ Teredo và rơle Teredo tồn tại để tạo điều kiện cho lưu lượng đó.

Máy chủ Teredo chỉ tham gia vào thiết lập kết nối ban đầu. Khi kết nối được thiết lập lưu lượng giữa máy khách Teredo và nút IPv6 gốc sẽ chuyển qua chuyển tiếp mà không cần máy chủ Teredo nhìn thấy bất kỳ lưu lượng nào.

Vì khách hàng không có ảnh hưởng đến việc lựa chọn rơle Teredo, nên mọi giải pháp yêu cầu thay đổi trên rơle sẽ không hoạt động. May mắn là không bắt buộc. Kết nối giữa máy khách và rơle nơi gửi phần lớn lưu lượng sẽ vẫn là lưu lượng Teredo hoàn toàn tiêu chuẩn.

Bởi vì máy khách và rơle vẫn giao tiếp bằng Teredo tiêu chuẩn và vì máy khách vẫn có địa chỉ IPv6 trong 2001::/32 tiền tố, điều này vẫn đủ điều kiện là Teredo.

Những thay đổi cần thiết

12 trong số các bit trong địa chỉ Teredo được khách hàng Teredo chọn ngẫu nhiên. Một sửa đổi là cần thiết ở phía khách hàng để làm cho những người không phải là ngẫu nhiên.

48 trong số các bit trong địa chỉ Teredo là địa chỉ IPv4 và số cổng UDP của máy khách Teredo mà máy chủ Teredo nhìn thấy.

Ở đây, điều rất quan trọng là 48 bit đó là địa chỉ cổng mà máy chủ nhìn thấy. Do NAT, máy khách và rơle có thể nghĩ rằng cổng UDP có địa chỉ hoàn toàn khác nhau. Nhưng những gì địa chỉ IPv4 và số máy khách và chuyển tiếp thấy không ảnh hưởng đến địa chỉ IPv6 cuối cùng.

Thông thường NAT duy nhất có liên quan được đặt gần máy khách Teredo. Nhưng nếu bạn muốn ảnh hưởng đến địa chỉ IPv6 cuối cùng, NAT có thể được đặt trên cùng một máy với máy chủ Teredo. Thậm chí có thể xây dựng NAT trực tiếp vào máy chủ Teredo nếu bạn có khuynh hướng như vậy.

Có bất kỳ thực hiện này tồn tại?

Chắc là không.

Tôi đã thực hiện trước đây phần lớn của một máy chủ Teredo làm điều này. Nhưng khách hàng sẽ chỉ được chọn địa chỉ IPv4 chứ không phải số cổng UDP. Tôi cần số cổng UDP để phân biệt khách hàng.

Một máy chủ Teredo có hỗ trợ giữ cả địa chỉ IPv4 và cổng UDP tĩnh cho một người dùng cụ thể sẽ cần một số cách nhận dạng người dùng. Có các trường trong giao thức, có khả năng có thể được sử dụng cho điều đó. Nhưng tôi không biết về bất kỳ triển khai nào với sự hỗ trợ để xác định các máy khách Teredo đối với các máy chủ Teredo.

Hơn nữa, Teredo bị một vấn đề đáng tin cậy. Vấn đề độ tin cậy này có liên quan đến một phần của giao thức Teredo, không liên quan đến bất kỳ sửa đổi nào tôi đã mô tả ở đây.

Vấn đề với Teredo

Vấn đề là làm thế nào nút IPv6 riêng chọn sử dụng rơle Teredo nào. Lý tưởng nhất là quản trị viên của mạng nơi đặt nút IPv6 riêng sẽ định cấu hình chuyển tiếp Teredo cho mạng đó (và định vị nó bên ngoài NAT nếu NAT đang được sử dụng cho IPv4).

Nhưng nhiều quản trị viên chọn không triển khai rơle Teredo. Thông thường lý do rằng Teredo rất không đáng tin cậy, họ không cần phải hỗ trợ nó (không bao giờ nhận ra rằng lý do này làm cho Teredo không đáng tin cậy là một lời tiên tri tự hoàn thành).

Điều xảy ra thay vào đó là lưu lượng truy cập từ nút IPv6 riêng sẽ được gửi qua tuyến mặc định tới nhà cung cấp ngược dòng, người này có thể gửi nó đến nhà cung cấp ngược dòng của họ và cuối cùng lưu lượng có thể kết thúc trên một chuyển tiếp công khai của bên thứ ba trên AS. quyết định công bố 2001::/32.

Sử dụng chuyển tiếp của bên thứ ba có nghĩa là đường dẫn mạng dài hơn có nghĩa là độ trễ tăng lên. Điều đó cũng có nghĩa là không có SLA và rơle Teredo có thể không có đủ dung lượng cho lưu lượng được gửi đến nó.

Hầu hết các trường hợp mà một địa chỉ IP tĩnh được mong muốn, một số độ tin cậy cũng được mong muốn. Và vì bạn hiếm khi có quyền kiểm soát tất cả các nút từ xa mà bạn sẽ liên lạc, nên bạn cũng không có quyền kiểm soát nào mà rơle Teredo sẽ được sử dụng.

Điều này làm cho Teredo với địa chỉ IP tĩnh trở thành một sản phẩm thích hợp cho những người sẵn sàng cài đặt máy khách Teredo đã sửa đổi để có được địa chỉ IP tĩnh mà không đảm bảo về độ tin cậy.


Về chủ đề chuyển tiếp, Microsoft có Dài đã có các kế hoạch ngừng hoạt động teredo.microsoft.com dịch vụ.
grawity

@grawity Đó là các máy chủ Teredo, không phải rơle Teredo. Tôi không nghĩ Microsoft vận hành bất kỳ rơle Teredo nào. Lần cuối tôi kiểm tra nhà cung cấp rơle Teredo công cộng lớn nhất là Hurricane Electric.
kasperd

À, đúng rồi, tôi cho là đúng.
grawity

0

Bạn có thể tốt hơn với một 6in4 đường hầm. Điều này sử dụng giao thức 41 không yêu cầu các quy tắc NAT bổ sung. Có những người môi giới cung cấp đường hầm miễn phí. Miễn là bạn là người duy nhất trên mạng của bạn sử dụng IP môi giới đường hầm, sẽ không có vấn đề gì.

Nếu địa chỉ IP của bộ định tuyến của bạn không tĩnh, bạn sẽ cần thực hiện cấu hình bổ sung để cấu hình lại mạng khi địa chỉ IP thay đổi. Điều này tương tự với những gì bạn cần làm với DDNS.

Làm tường lửa kết nối của bạn vì bạn sẽ không có NAT bảo vệ bạn khỏi lưu lượng không mong muốn.

Hỗ trợ cho cả hai 6in46to4 được tích hợp vào Linux. Ban đầu tôi bắt đầu với 6to4 hoạt động nhưng không ổn định như tôi muốn. Với 6in4 Tôi đã có kết nối ổn định. Tôi đã sử dụng nó để kết nối NTP và có được nguồn thời gian ổn định qua IPv6.


1
Giao thức 41 làm yêu cầu các quy tắc NAT bổ sung; thường thì nó thậm chí còn rắc rối hơn UDP của Teredo, vì nhiều cổng giá rẻ không cung cấp bất kỳ tùy chọn nào ngoài TCP hoặc UDP.
grawity

@grawity Tôi chưa bao giờ phải chuyển tiếp giao thức 41 và các bộ định tuyến tôi đã làm việc không gây ra bất kỳ vấn đề nào cho tôi. Kết nối ban đầu được thiết lập từ máy chủ của tôi và tôi nhận được kết nối trên nhiều giao thức từ tất cả các loại máy chủ. Tôi có lưu lượng IPv6 đi ít hơn nhiều so với lưu lượng đến. Cả hai bộ định tuyến cuối cùng của tôi đều cung cấp tùy chọn chuyển tiếp giao thức 41.
BillThor

1
"Kết nối ban đầu"? Proto41 là không kết nối; nghĩa đen là IP qua IP. Nếu gói đầu tiên được gửi đi, thì có, cổng sẽ theo dõi nó dưới dạng "kết nối" tương tự như UDP đi. Nhưng khi bạn không nhận được bất kỳ gói IPv6 nào trong một thời gian, trạng thái sẽ hết hạn (giống như UDP). Khi bộ định tuyến nhận được một đến gói proto41, nó không thể biết nơi để chuyển tiếp nó, trừ khi có một mục nhập trạng thái NAT hoặc quy tắc NAT được định cấu hình.
grawity

@grawity Dường như ngay cả các bộ định tuyến giá rẻ cũng thực hiện công việc chấp nhận theo dõi trạng thái của proto41. Người môi giới đường hầm của tôi có thể có thời gian duy trì đủ ngắn để giữ cho trạng thái được thiết lập hoặc lưu lượng truy cập của tôi đủ cao để giữ cho trạng thái hoạt động.
BillThor
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.