OpenVPN GUI TUNモードとTAP モードの意味

SoftEther VPN に関するご質問はこのフォーラムにお気軽にご投稿ください。
Post Reply
hiura
Posts: 199
Joined: Wed Mar 10, 2021 1:56 am

OpenVPN GUI TUNモードとTAP モードの意味

Post by hiura » Mon Mar 02, 2026 2:12 am

OpenVPN GUI TUNモードとTAP モードの意味

http://www.vpnusers.com/viewtopic.php?t ... %3Ftl%3Dja

①TUNモードとはL3トンネルで、クライアントとサーバ間でIPを運ぶ
②TAPモードとはL2トンネルで、クライアントとサーバ間でイーサネットフレームを運ぶ

②は正しいが、
①は正しくないのでは?
「TUNモードとはL2トンネルで、クライアントとサーバ間でイーサネットフレームを運ぶ」が正解では?

なぜなら、
OpenVPN GUI CLIENTからTUNモードでVPN SERVERへ接続すると、
仮想NIC 「TAP-Windows Adapter V9」のやり取りがWIRESHARKで見れる。
DHCPでのアドレス割り当て等...

cedar
Site Admin
Posts: 2361
Joined: Sat Mar 09, 2013 5:37 am

Re: OpenVPN GUI TUNモードとTAP モードの意味

Post by cedar » Mon Mar 02, 2026 10:41 am

それは変ですね。Windows 版の OpenVPN の TUN/TAP デバイスは TUN の機能も兼ねているので TAP デバイスと通信している事自体は異常ではないのですが、DHCP のやり取りが見えるのは変な気がします。

設定がうまく機能していないのかもしれませんので、OpenVPN のログを確認してみて下さい。

hiura
Posts: 199
Joined: Wed Mar 10, 2021 1:56 am

Re: OpenVPN GUI TUNモードとTAP モードの意味

Post by hiura » Tue Mar 03, 2026 2:19 am

添付します。
GUI_L3_CLT_remote_access_l3.log
GUI_L3_CLT_NETCFG.png
GUI_L3_CLT_VNIC.png
You do not have the required permissions to view the files attached to this post.

hiura
Posts: 199
Joined: Wed Mar 10, 2021 1:56 am

Re: OpenVPN GUI TUNモードとTAP モードの意味

Post by hiura » Wed Mar 04, 2026 2:42 am

以下の通り、理解しています。

定義は
L3VPN:「層3の仮想私設網」:IP 層で動作する仮想プライベートネットワーク(IP層を運ぶ、例えばIP OVER MPLS)。
L2VPN:「層2の仮想私設網」:データリンク層で動作する仮想プライベートネットワーク(データリンク層を運ぶ、例えばイーサネットOVER TLS OVER TCP OVER IP)

したがって、
OpenVPNのTAPモードはL2VPNである。
OpenVPNのTUNモードもL2VPNである。

TUNモードはL3VPNであるという表現は間違い。

TAPモードとTUNモードの違いは、
TAPモードではVPN SERVER側のLANに直接接続するが、
TUNモードではVPN SERVER側の仮想ルータ経由でLANに接続する。

cedar
Site Admin
Posts: 2361
Joined: Sat Mar 09, 2013 5:37 am

Re: OpenVPN GUI TUNモードとTAP モードの意味

Post by cedar » Wed Mar 04, 2026 2:12 pm

ログでは、「PUSH: Received control message: 'PUSH_REPLY,ping 3,ping-restart 10,ifconfig 192.168.11.5 192.168.11.6,dhcp-option DNS 192.168.11.1,route-gateway 192.168.11.6,redirect-gateway def1'」の部分で、VPN サーバー側から L2 パケットではなく OpenVPN オプションとして IP アドレスが渡されている事がわかります。
これを TAP ドライバが「Notified TAP-Windows driver to set a DHCP IP/netmask of 192.168.11.5/255.255.255.252 on interface {659B4709-5F62-49D5-84AD-13AFA77230E5} [DHCP-serv: 192.168.11.6, lease-time: 31536000]」のように DHCP に翻訳しています。

調べてみると、これはWindows版のTUN/TAPドライバの実装の特徴のようです。
TUN モードで OpenVPN アプリケーションまでは L3 で来ているのですが、古い Windows では L3 の API がなく、TUN モードでは、TAP ドライバの中で L3 の通信を L2 に変換して通信しているとのことです。

https://deepwiki.com/OpenVPN/openvpn/5. ... interfaces

OpenVPN 2.5 からは、純粋な L3 VPN として動作できるよう、Wintun デバイスが利用できるようになっているので、そちらを試してみると挙動がわかりやすいかも知れません。

https://www.openvpn.jp/2020/09/29/1320/

Post Reply