Truy cập IP nội bộ bằng IP công cộng


38

Tôi có modem DSL có địa chỉ IP công cộng ( 201.206.x.x) và tôi có máy chủ web trong mạng nội bộ ( 192.168.0.50).

Tôi đã thiết lập modem để chuyển tiếp yêu cầu tới cổng 80 đến máy chủ web của mình, vì vậy, nếu tôi truy cập 201.206.x.xtừ bên ngoài mạng, nó sẽ hiển thị trang web của tôi, điều tương tự cũng xảy ra nếu tôi truy cập 192.168.0.50từ máy tính trong mạng.

Bây giờ, vấn đề là khi tôi cố gắng truy cập 201.206.x.xtừ mạng nội bộ của mình, trình duyệt cố gắng kết nối với cấu hình modem DSL, thay vì chuyển hướng yêu cầu của tôi đến máy chủ Web của tôi.

Tôi phải thay đổi cài đặt nào trong modem để thiết lập chuyển hướng này?


Một biến thể của vấn đề, tôi có nhiều (2) máy chủ lưu trữ và tôi đã cấu hình DNS (BIND9) cho các yêu cầu nội bộ. Làm cách nào để ánh xạ (đến Máy chủ lưu trữ khác nhau) các yêu cầu bên ngoài (tới IP công khai) dựa trên tên máy chủ?
Kunal B.

Câu trả lời:


20

Vấn đề là việc viết lại gói nói chung chỉ có thể diễn ra khi đi qua tường lửa. Nói chung, các bộ định tuyến không thể thực hiện việc ghi lại cần thiết khi yêu cầu đến từ cùng một mạng mà yêu cầu sẽ được ghi lại. Giải pháp chung cho vấn đề này là đặt proxy web bên ngoài mạng lặp lại yêu cầu thông qua tường lửa của bạn.

Tôi nghi ngờ vấn đề cụ thể của bạn là bạn muốn truy cập trang web thông qua tên máy chủ DNS. Bạn có thể xử lý việc đó bằng cách sử dụng DNS "split-horiz", do đó, nó chú ý đến nơi yêu cầu đến và trả lời một cách thích hợp: Nếu yêu cầu đến từ bên trong mạng của bạn, nó sẽ đưa ra 192.168.0.50 cho các yêu cầu đến từ bạn mạng và IP công cộng cho mọi người khác.

Một trong những đề xuất này có thể được triển khai trên bất kỳ máy chủ nào bên ngoài mạng của bạn, như ví dụ vi mô Amazon EC2 (miễn phí).


Cảm ơn, mặc dù tôi nghĩ rằng tôi sẽ gắn bó với việc chỉnh sửa tệp HOSTS vì về cơ bản đó là một trang web cá nhân mà tôi sử dụng để kiểm tra các trang web tôi đang làm việc. PC thậm chí không hoạt động 24/7.

3
Tôi đã giải quyết vấn đề này trên mạng gia đình của mình bằng cách thêm một bản ghi A có cùng tên với tên dyndns bên ngoài của tôi trên máy chủ DNS của riêng tôi (cũng chạy trên mạng gia đình của tôi). Bản ghi A chỉ đến vị trí thích hợp trong mạng gia đình của tôi, cũng như bản ghi PTR ngược. Nhưng tất nhiên, không phải ai cũng chạy DNS tại nhà của riêng mình ...
LawrenceC

14

Tôi sẽ nói rằng @Insyte gặp phải vấn đề gì đó khi anh ấy / cô ấy nói về vấn đề là vấn đề giải quyết DNS .. điều đó có nghĩa là vấn đề là viết lại gói tin (đọc lại bài đăng @Insyte để biết giải thích đó).

Giả sử bạn có thiết lập sau:

  1. IP công cộng: 201.206.x.y
  2. IP riêng: 192.168.0.50
  3. Chuyển tiếp cổng cho tất cả 80 (và 443 nếu bạn đang làm SSL) trên IP 201.206.x.y192.168.0.50

Sau đó, bạn nhập nội dung sau vào trình duyệt của mình trong khi bạn đang ở trong mạng nội bộ của mình:

http://www.yourwebsite.com

và lỗi xảy ra. Vì vậy, giải pháp: hack tập tin máy chủ của bạn.

Trên Windows, đi đến C:\windows\system32\drivers\etc\hosts (thông báo, không có phần mở rộng trên tệp đó). Trên Linux, tập tin được đặt trong /etc/hosts.

Nếu bạn mở tệp đó trong Notepad, thì bạn có thể thấy bất kỳ mục nào được sử dụng để ghi đè DNS. Nếu bạn muốn cập nhật tệp đó, bạn sẽ cần mở Notepad (hoặc bất kỳ chương trình nào bạn đang sử dụng để chỉnh sửa tệp) với quyền Quản trị viên - nếu không bạn không thể lưu tệp.

Thêm phần này vào tập tin máy chủ của bạn:

192.168.0.50 www.yourwebsite.com

Sau đó khởi động lại trình duyệt của bạn , nhập URL và violà! Nó đang hoạt động. Vì vậy, điều này có nghĩa là, trình duyệt của bạn không dựa vào DNS của bạn để phân giải tên miền của bạn thành IP. Thay vào đó, chúng tôi ghi đè lên điều này và nói: Trình duyệt, chỉ cần truy cập IP nội bộ của tôi cho tên miền đó, thay vì hỏi DNS cho địa chỉ IP .

Nếu bạn đang ở trong một văn phòng, thì bạn có thể có được tất cả những người cần truy cập trang web nội bộ này, để hack tệp máy chủ của họ hoặc nếu bạn có DNS nội bộ, thì bạn có thể thêm một mục vào đó.

Một ý tưởng khác là có một máy chủ proxy nội bộ (cho tất cả lướt web, v.v.) và sau đó hack tệp máy chủ trên máy chủ proxy. Điều này có nghĩa là trình duyệt của bạn sẽ nói, Proxy, bạn có thể vui lòng lấy cho tôi tài nguyênhttp://www.mywebsite.com và proxy nói Chắc chắn không, và vì tôi đã được yêu cầu bỏ qua DNS cho tên miền đó, tôi sẽ chỉ cung cấp IP đã được mã hóa cứng tập tin máy chủ của tôi .


Đúng, tôi thực sự đã có nó trước khi tôi đăng, tôi chỉ muốn có thể truy cập nó thông qua IP thực tế, nhưng tôi nghĩ rằng tôi có thể sống với điều đó vì modem của tôi không có phản xạ NAT (như được đề xuất bởi @MaQleod).

3
Điều gì về một máy tính xách tay hoặc điện thoại thông minh thường xuyên truy cập vào cùng một trang web thông qua mạng nội bộ hoặc bên ngoài?
TREE

@TREE bạn có thể vui lòng giải thích. Tôi không hiểu câu hỏi của bạn.
Pure.Krom

Tôi có một thiết lập rất giống nhau, ngoại trừ tôi đang sử dụng tên miền. Vì vậy, từ bên ngoài mạng, tên miền của tôi phân giải thành IP bên ngoài của tôi và từ bên trong, nó phân giải thành IP bên trong. Tôi có máy tính xách tay và điện thoại thông minh thường xuyên truy cập từ bên trong và bên ngoài, vì vậy việc hack tệp máy chủ sẽ không hoạt động. Những gì tôi đã làm về cơ bản là những gì câu trả lời khác (Pure.Krom) của bạn gợi ý, chỉ thay vì sử dụng máy chủ bên ngoài, tôi chỉ nói với máy chủ DHCP trên bộ định tuyến để trả trước một máy chủ DNS nội bộ. Nó chủ yếu hoạt động, nhưng có độ trễ khó chịu khi chuyển đổi mạng trước khi mọi thứ bắt đầu giải quyết.
TREE

9

Đây là một vấn đề phổ biến với cách một số bộ định tuyến xử lý lưu lượng có nghĩa là địa chỉ công cộng của họ từ một địa chỉ nội bộ - họ không tuân theo các quy tắc chuyển tiếp cổng giống như các yêu cầu từ bên ngoài mạng. Những gì bạn cần tìm trong các bộ định tuyến của bạn là NAT phản ánh . Điều này sẽ cho phép bộ định tuyến xử lý các yêu cầu nội bộ cho IP công cộng sử dụng cùng các quy tắc chuyển tiếp cổng như thể yêu cầu đến từ bên ngoài mạng.


1
Phản ánh NAT. Tôi nghĩ đó là những gì tôi đang tìm kiếm. Thật không may, modem của tôi không có điều đó. Cảm ơn!

Phải làm gì khi modem của bạn không hỗ trợ NAT loopback ??
PrimitiveNom

2

Tôi có thể giúp bạn tốt hơn nếu bạn có thể đưa cho tôi mô hình và kiểu modem ...

Nhưng điều xảy ra ở đây là thông thường một trang cấu hình bộ định tuyến hoặc modem chỉ nên xuất hiện khi truy cập IP bên trong của chúng (192.168.0.1)

Nhưng điều dường như đang xảy ra ở đây là nó Xác định yêu cầu đến (201.206.xx) Vì đến từ bên trong nên quyết định cung cấp cho bạn trang cấu hình thay vì tuyến thông thường đến máy chủ web của bạn ...

Bây giờ nếu bạn đang sử dụng modem cấp độ Người tiêu dùng, có lẽ bạn không thể thay đổi điều này (xin lỗi)

Nhưng có lẽ bạn có thể: Hãy thử và xem nếu có cài đặt 'nghe' trong trang cấu hình quản trị viên của bạn

Ở đó bạn có thể cố gắng thay đổi trang quản trị của mình sang một cổng khác Hoặc giới hạn địa chỉ nghe của nó


2

Có lẽ vấn đề là quản trị từ xa được cho phép.


2

Bạn có thể thêm một tuyến đường để truy cập IP công cộng của máy chủ trực tiếp thông qua IP cục bộ của nó. Trên Windows, lệnh này giống như

route add [public IP] mask 255.255.255.255 [the server's local IP]

Để thêm một tuyến liên tục, thêm -ptham số vào lệnh trên.

Sau đó, mỗi khi bạn truy cập IP công cộng, máy tính sẽ chuyển IP cục bộ của máy chủ thành cổng. Bởi vì máy chủ biết IP công cộng của chính nó, nó sẽ xử lý gói từ chính nó, thay vì chuyển tiếp nó đến mạng cục bộ.

Bạn phải đảm bảo IP cục bộ của máy chủ tĩnh.


Tại sao máy chủ biết địa chỉ IP công cộng của riêng mình?
G-Man nói 'Phục hồi Monica'

Máy chủ chắc chắn biết IP của họ. IP tĩnh hoặc IP động. Tôi không chắc chắn làm thế nào chính xác định tuyến hoạt động. Tôi đoán là mỗi máy có một bản đồ tuyến đường. Khi nhận được gói, nó quyết định có nên xử lý gói không.
qevan 14/03/2015

0

Có vấn đề tương tự. Tôi đã có thể khắc phục điều này bằng cách thêm tên máy chủ DNS vào danh sách Ánh xạ máy chủ DNS của bộ định tuyến. Tôi tìm thấy các cài đặt này được liệt kê trong danh sách tùy chọn nâng cao của bộ định tuyến của tôi.


0

Trên bộ định tuyến của mình, tôi đã phải tắt "Tăng tốc NAT" (Cắt qua chuyển tiếp) vì điều này đã phá vỡ vòng lặp NAT ...

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.