OpenVPN: Chỉ định tuyến một địa chỉ IP cụ thể thông qua VPN?


44

Trên mạng riêng từ xa có hai máy chủ - máy chủ tệp và máy chủ cơ sở dữ liệu (cả hai đều là máy Win, trong trường hợp có vấn đề).

Máy chủ tệp có các cơ chế xác thực khá mạnh mẽ và cho phép tôi kết nối trực tiếp từ một địa điểm từ xa.

Máy chủ cơ sở dữ liệu sử dụng tên người dùng và mật khẩu đơn giản, vì vậy để ngăn chặn truy cập trái phép, nó bị khóa vào mạng cục bộ - lưu lượng truy cập bên ngoài bị chặn.

Để truy cập máy chủ cơ sở dữ liệu, tôi đang sử dụng ứng dụng khách OpenVPN trên Windows để kết nối với máy chủ VPN trên mạng riêng.

Theo mặc định, OpenVPN định tuyến tất cả các gói mạng được dành cho mạng từ xa mà máy chủ VPN cư trú, thông qua VPN. Thật không may, truy cập máy chủ tệp thông qua VPN là cực kỳ chậm!

Câu hỏi:

Làm cách nào tôi có thể định cấu hình ứng dụng khách OpenVPN để CHỈ định tuyến lưu lượng truy cập thông qua VPN được dành cho một địa chỉ IP cụ thể, duy nhất - cụ thể là máy chủ cơ sở dữ liệu ??


Thật đơn giản, xem tại đây để biết cách thực hiện superuser.com/a/178675/96461
Sameer

Câu trả lời:


49

Cấu hình chính xác cho OpenVpn là:

route-nopull 
route 192.168.0.0 255.255.255.0

Các mục này thuộc về tệp .ovpn của bạn và sẽ điều hướng tất cả lưu lượng mạng con 192.168.0. * Thông qua VPN.

Chỉ dành cho một IP (192.168.0.1):

route-nopull 
route 192.168.0.1 255.255.255.255

Chúng tôi chủ yếu là người nói tiếng Anh và không nhất thiết phải biết tiếng Đức. Hãy dịch câu trả lời của bạn.
gronostaj

1
+1. Đây chính xác là những gì tôi cần. Tôi đang sử dụng các ứng dụng khách ovpn trên linux của mình và do đó bạn trả lời đã cứu tôi. Cảm ơn.
slayedbylucifer

Tôi có thể định tuyến một trang web đến vpn không? Ví dụ: chỉ www.facebook.com
Nicola Peluchetti

Trong trường hợp của tôi định tuyến ip đơn thông qua vpn dường như hoạt động tốt. Nhưng khi sử dụng mặt nạ mạng con thì nó không hoạt động. Bất cứ ý tưởng tại sao?
chạy.t

Tôi vẫn không biết câu trả lời cho câu hỏi của mình (ở trên), nhưng tôi đã thực hiện một số điều tra và tạo chủ đề riêng về nó: superuser.com/questions/854194/ Lỗi
running.t

24

Những mục tiêu

  • Sử dụng kết nối internet đơn giản cho tất cả lưu lượng truy cập internet theo mặc định, ngay cả khi VPN được kết nối.
  • Định tuyến lưu lượng đến một địa chỉ IP cụ thể thông qua VPN.

Các bước

  1. Nhấn Win+ Rvà thực hiện ncpa.cpl.

  2. Nhấp chuột phải vào kết nối VPN và đi đến Thuộc tính → Mạng .

  3. Chọn Internet Protocol Version 4 và đi đến Properties → nâng cao ... .

  4. Bỏ chọn Sử dụng cổng mặc định trên mạng từ xa và bấm OK .

  5. (tùy chọn) Lặp lại các bước trước cho Giao thức Internet Phiên bản 6 .

  6. (Re) kết nối với VPN của bạn.

  7. Mở một dấu nhắc lệnh và thực hiện route print -4.

  8. Phát hiện giao diện của VPN trong danh sách Giao diện và cổng của nó trong Các tuyến hoạt động .

    Trên máy của tôi, tôi có:

    Interface List
     32...........................Super Free VPN
    
    [...]
    
    Active Routes:
    Network Destination        Netmask          Gateway       Interface  Metric
              0.0.0.0          0.0.0.0         On-link        10.6.6.127     31
             10.0.0.0        255.0.0.0        10.88.1.1      10.88.1.102     31
    

    Ở đây, cổng của VPN 10.88.1.1, vì nó là cổng cho 10.xxx.xxx.xxxkhối.

  9. Thêm một tuyến liên tục sẽ được thêm vào các tuyến đang hoạt động bất cứ khi nào có kết nối với VPN:

    route -p add 23.22.135.169 10.88.1.1 if 32
    

    Trong ví dụ này, 23.22.135.169là IP của whatismyip.org, 10.88.1.1là IP của gateway và 32số lượng giao diện.

  10. (tùy chọn) Lặp lại các bước trước cho route print -6.

  11. Kiểm tra thiết lập.

    Nếu mọi thứ đều ổn, whatismyip.orgwww.whatismyip.cx sẽ hiển thị các IP khác nhau ngay bây giờ.


1
Chắc chắn có một cách đơn giản hơn?
Brian Lacy

1
Bạn có biết làm thế nào để đạt được điều này trong Linux (Ubuntu) không?
ЕЕннн

1
@ ЕЕнн nếu bạn đang sử dụng Trình quản lý mạng, chỉ cần chọn "Chỉ sử dụng kết nối này cho các tài nguyên trên mạng này".
leif81

1
+1 ... nhưng có thể đánh gôn này không?
Olivier Dulac

11

Để cấu hình máy khách OpenVPN của bạn, thêm một dòng như:

route The.IP.To.Go 255.255.255.255

(Trong đó The.IP.To.Go là IP bạn muốn định tuyến qua VPN)

Điều này hướng dẫn OpenVPN tạo mục nhập trong bảng định tuyến của hệ điều hành của bạn.

Ngoài ra, máy chủ OpenVPN có thể được tạo để "đẩy" cấu hình định tuyến này xuống máy khách, bằng cách thêm vào cấu hình máy chủ:

push "route The.IP.To.Go 255.255.255.255"

EDIT: Một điều tôi đã bỏ lỡ địa chỉ - chuyển tiếp mặc định của tất cả lưu lượng truy cập ... Nó có thể bị vô hiệu hóa trên máy chủ hoặc khách hàng có thể chọn bỏ qua các lệnh "đẩy" (vì vậy tùy chọn thứ hai của chúng tôi "đẩy" tuyến sẽ không hoạt động ) thông qua:

route-nopull

-2
iptables -A PREROUTING -t mangle -i <LAN_interface> \
-d <remote_network>/<remote_netmask> -j ROUTE --gw <openvpn_host_ip>

Hãy giải thích những gì lệnh này làm. Chỉ cần một lệnh mà không giải thích là không hữu ích. Ngoài ra, hãy kiểm tra định dạng của bài đăng của bạn, tất cả những thứ <brackets>không thể nhìn thấy nếu chúng không được đánh dấu là mã.
slhck
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.