MT を OpenVPN サーバー (Debian) で動作させるのに問題があります。OVPN サーバーへの接続は成功しますが、トラフィックは OVPN サーバーを経由してルーティングされません。これが私の設定です。
設定 -https://i.stack.imgur.com/AAH9Y.jpg
OpenVPN サーバー (Debian/Linux) の設定
# /etc/openvpn/server.conf を編集する ローカル 95.2.171.3 ポート 1194 プロトコル TCP デヴ・トゥン ca ca.crt 証明書サーバー.crt キーサーバー.キー dh dh.pem サーバー 10.8.0.0 255.255.255.0 ifconfig-pool-persist ipp.txt クライアント設定ディレクトリ ccd ルート 192.168.81.0/24 255.255.255.0 キープアライブ 10 120 tun-mtu 1500 mssfix 1450 暗号AES-256-CBC 認証 sha1 永続キー 持続する ステータス /var/log/openvpn-status.log ログ追加 /var/log/openvpn.log 動詞5 crl 検証 /etc/openvpn/easy-rsa/pki/crl.pem # cat /etc/openvpn/ccd/client アイルート 192.168.81.0 255.255.255.0 10.8.0.2 ifconfigプッシュ10.8.0.2 10.8.0.1 # cat /proc/sys/net/ipv4/ip_forward 1 # netstat -an | grep 1194 tcp 0 0 95.2.171.3:1194 0.0.0.0:* 聞く tcp 0 0 95.2.171.3:1194 81.190.190.100:62973 確立 # 設定ファイル eth0 リンク カプセル化:イーサネット HWaddr 20:cf:30:f2:a8:76 inet アドレス:95.2.171.3 Bcast:95.2.171.31 マスク:255.255.255.224 inet6 アドレス: fe80::22cf:30ff:fef2:a876/64 スコープ:リンク アップブロードキャスト 実行中マルチキャスト MTU:1500 メトリック:1 RXパケット:255189 エラー:0 ドロップ:0 オーバーラン:0 フレーム:0 TX パケット:333054 エラー:0 ドロップ:0 オーバーラン:0 キャリア:0 衝突:0 送信キュー数:1000 RX バイト:34521411 (32.9 MiB) TX バイト:367074147 (350.0 MiB) 割り込み:26 ベースアドレス:0x8000 lo リンクカプセル化:ローカルループバック inet アドレス:127.0.0.1 マスク:255.0.0.0 inet6 アドレス: ::1/128 スコープ:ホスト アップループバック実行中 MTU:16436 メトリック:1 RXパケット:15579 エラー:0 ドロップ:0 オーバーラン:0 フレーム:0 TX パケット:15579 エラー:0 ドロップ:0 オーバーラン:0 キャリア:0 衝突:0 送信キュー:0 RX バイト:1326071 (1.2 MiB) TX バイト:1326071 (1.2 MiB) tun0 リンク カプセル化:UNSPEC HWaddr 00-00-00-00-00-00-00-00-00-00-00-00-00-00-00-00 inet アドレス:10.8.0.1 PtP:10.8.0.2 マスク:255.255.255.255 UP ポイントポイント NOARP マルチキャストを実行中 MTU:1500 メトリック:1 RXパケット:57 エラー:0 ドロップ:0 オーバーラン:0 フレーム:0 TXパケット:6 エラー:0 ドロップ:0 オーバーラン:0 キャリア:0 衝突:0 送信キュー数:100 RX バイト:6669 (6.5 KiB) TX バイト:504 (504.0 B) # ネットスタット -rn カーネル IP ルーティング テーブル 宛先ゲートウェイ Genmask フラグ MSS ウィンドウ irtt Iface 10.8.0.2 0.0.0.0 255.255.255.255 UH 0 0 0 tun0 95.2.171.0 0.0.0.0 255.255.255.224 U 0 0 0 eth0 192.168.81.0 10.8.0.2 255.255.255.0 UG 0 0 0 tun0 10.8.0.0 10.8.0.2 255.255.255.0 UG 0 0 0 tun0 0.0.0.0 95.2.171.30 0.0.0.0 UG 0 0 0 eth0 # iptables -S -P 入力を受け入れる -P 転送 受け入れ -P 出力受け入れ -A 入力 -i lo -j 受け入れ -A 入力 -d 127.0.0.0/8 -i !lo -j 拒否 --拒否-icmp-ポート到達不能 -A 入力 -i tun0 -j 受け入れ -A 入力 -m 状態 --state RELATED、ESTABLISHED -j ACCEPT -A 入力 -p tcp -m tcp --dport 1194 -j 受け入れ -A 入力 -m 制限 --limit 5/分 -j ログ --log-prefix "iptables が拒否されました: " --log-level 7 -A 入力 -j 拒否 --拒否-icmp-ポート到達不能 -A 出力 -j 受け入れ # iptables -t nat -S -P 事前ルーティング受け入れ -P ポストルーティング受け入れ -P 出力受け入れ -A POSTROUTING -s 10.8.0.0/24 -j SNAT --to-source 95.2.171.3 -A POSTROUTING -s 10.8.0.0/24 -j SNAT --to-source 95.2.171.3 -A POSTROUTING -s 10.8.0.0/24 -j SNAT --to-source 95.2.171.3 # 8.8.8.8 にpingする PING 8.8.8.8 (8.8.8.8) 56(84) バイトのデータ。 8.8.8.8 からの 64 バイト: icmp_req=1 ttl=55 time=12.9 ms 8.8.8.8 からの 64 バイト: icmp_req=2 ttl=55 time=12.8 ms
これは OpenVPN サーバー (Debian/Linux) 上のすべての設定です。
OpenVPN クライアント側 (Mikrotik RouterOS 6) の設定
/インターフェース印刷 フラグ: D - 動的、X - 無効、R - 実行中、S - スレーブ # 名前 タイプ 実際のMTU L2MTU 最大L2MTU MACアドレス 0 R エーテル1 エーテル 1500 1600 4076 D4:CA:6D:31:14:F4 1 S エーテル2 エーテル 1500 1598 2028 D4:CA:6D:31:14:F5 2 S エーテル3 エーテル 1500 1598 2028 D4:CA:6D:31:14:F6 3 S エーテル4 エーテル 1500 1598 2028 D4:CA:6D:31:14:F7 4 S エーテル5 エーテル 1500 1598 2028 D4:CA:6D:31:14:F8 5 RS wlan1 wlan 1500 1600 D4:CA:6D:31:14:F9 6 R ブリッジ1 ブリッジ 1500 1598 D4:CA:6D:31:14:F5 7 R ovpn-out1 ovpn-out 1500 FE:3E:27:7D:61:8C /インターフェースブリッジプリント フラグ: X - 無効、R - 実行中 0 R name="bridge1" mtu=auto 実際のmtu=1500 l2mtu=1598 arp=有効 mac-address=D4:CA:6D:31:14:F5 プロトコルモード=rstp 優先度=0x8000 自動mac=はい 管理者mac=00:00:00:00:00:00 最大メッセージ有効時間=20秒 転送遅延=15秒 送信保留カウント=6 エージング時間=5分 /インターフェース ブリッジ ポート 印刷 フラグ: X - 無効、I - 非アクティブ、D - 動的 # インターフェース ブリッジ プライオリティ パスコスト ホライズン 0 I ether2 ブリッジ1 0x80 10 なし 1 I ether3 ブリッジ1 0x80 10 なし 2 I ether4 ブリッジ1 0x80 10 なし 3 I ether5 ブリッジ1 0x80 10 なし 4 wlan1 ブリッジ1 0x80 10 なし /ipアドレス印刷 フラグ: X - 無効、I - 無効、D - 動的 # アドレスネットワークインターフェース 0 192.168.81.1/24 192.168.81.0 ブリッジ1 1 D 192.168.7.200/24 192.168.7.0 イーサ1 2 D 10.8.0.2/32 10.8.0.1 ovpn-out1 /ip ファイアウォール nat プリント フラグ: X - 無効、I - 無効、D - 動的 0 チェーン=srcnat アクション=マスカレード to-addresses=0.0.0.0 out-interface=ether1 ログ=no ログプレフィックス="" /ip ルート プリント フラグ: X - 無効、A - アクティブ、D - 動的、C - 接続、S - 静的、r - rip、b - bgp、o - ospf、m - mme、B - ブラックホール、U - 到達不能、P - 禁止 # DST アドレス PREF-SRC ゲートウェイ距離 0 広告 0.0.0.0/0 192.168.7.1 0 1 ADC 10.8.0.1/32 10.8.0.2 ovpn-out1 0 2 ADC 192.168.7.0/24 192.168.7.200 イーサ1 0 3 ADC 192.168.81.0/24 192.168.81.1 ブリッジ1 0 /インターフェースovpn-client印刷 フラグ: X - 無効、R - 実行中 0 R name="ovpn-out1" mac-address=FE:3E:27:7D:61:8C max-mtu=1500 connect-to=195.13.171.3 port=1194 mode=ip user="client" password="" profile=default certificate=Client auth=sha1 cipher=aes256 add-default-route=no 10.8.0.1 にpingを実行 SEQ ホスト サイズ TTL 時間 ステータス 0 10.8.0.1 56 64 6ミリ秒 1 10.8.0.1 56 64 9ミリ秒 2 10.8.0.1 56 64 7ミリ秒 3 10.8.0.1 56 64 6ミリ秒 送信=4 受信=4 パケット損失=0% 最小RTT=6ms 平均RTT=7ms 最大RTT=9ms
ご覧のとおり、Mikrotik から OpenVPN サーバーに ping を実行できます。ただし、ローカル PC からインターネットを使用すると、表示される IP アドレスは 81.190.190.100 であり、私が見たい OpenVPN サーバー IP 95.2.171.3 ではありません。
ラップトップ (192.168.81.100/24) から 10.8.0.1 に ping/traceroute を正常に実行できますが、VPN トンネル経由でルーティングされない理由がわかりません。サーバー (Linux) またはクライアント (mikrotik) のいずれかのルーティングで何かが欠けていると思います。
ご協力ありがとうございます。しばらくこれで遊んでいますが、実行できません :(
良い一日を!
答え1
mikrotik にルート (デフォルト ゲートウェイ) がないため、クライアントは OVPN トンネルを経由してルーティングされません。
そこで、OVPNサーバー10.8.0.1を宛先とするルーティングマークを持つ別のゲートウェイをmikrotikに追加します。
/ip route add dst-address=0.0.0.0/0 gateway=10.8.0.1 routing-mark=clientmark
もちろん、routing-mark に次のようなマングル ルールを追加する必要があります。
/ip firewall mangle add action=mark-routing chain=prerouting src-address=192.168.81.0/24 new-routing-mark=clientmark
また、クライアント (ソース アドレス 192.168.81.0/24) の NAT ルールも必要です。
ip firewall nat add action=masquerade chain=srcnat src-address=192.168.81.0/24 out-interface=ovpn-out1