サービス一覧 当社について  緊急用ダイヤル(24時間)→050-31-969696

Linux上に構築したSoftEther VPN Serverを経由し同サーバ上のWebサーバ等にアクセスする方法

SoftEther VPN ClientからSoftEther VPN ServerにVPN接続をしている状態で
VPN Server自体へアクセスすることができない(Linux上のSoftEther VPN Serverの場合)
これはLinuxの仕様によるところが大きく、都度思い出せないので記載。

1.仮想NAT(SecureNAT)の設定で仮想NAT機能を有効にした場合
仮に仮想ホストのネットワークインターフェイスが192.168.10.1として
VPN ClientからVPN Serverの 192.168.10.1 やeth0などのIPアドレスへ
pingはできてもWebサーバなどが同居している場合にアクセスできない。

2.ローカルブリッジ設定で仮想HUBとeth0などのLANカードを選んでローカルブリッジを追加する場合
仮想環境やクラウド環境では通常プロミスキャスモードの利用ができないなど制限に当たりやすいが、
1と違ってNAT処理などしないので1より通信スピードは早い。

3.ローカルブリッジ設定で仮想HUBと新しいtapデバイスを追加した場合
Linux上ではvpn_tap名が作られることで1の問題解消と2のメリットを受ける。

3の場合、VPNサーバー上で
sudo ip a add 192.168.230.2/24 dev tap_vpn
などを実行し、tapデバイスにIPアドレスを追加する必要がある。

1及び3では仮想NAT機能のチェックを外しつつ
仮想DHCPサーバー機能だけチェックをつけることでDHCPサーバだけ使うことは可能。
*SecureNATの設定画面にあるIPアドレスをtapデバイスにつけないよう注意する。

VPNClient側でVPNServer接続後にDNSサーバを取得させる際、Clientで
dhclient vpn_vpn
を実行すると/etc/resolv.conf記載の聞きに行くDNSサーバ(nameserver)が
VPN接続セグメントのものだけになる。
これはVPNClientとServer間の接続が切れても残り続け、VPNServerのIPアドレスがわからず
./vpncmd /client localhost /cmd accountlist
を実行時Connecting….のままになってしまうので注意する。