Java Android VPNService如何与Internet通信
我正在尝试创建Android示例vpn应用程序 我是通过引用创建VPN服务的Java Android VPNService如何与Internet通信,java,android,android-vpn-service,Java,Android,Android Vpn Service,我正在尝试创建Android示例vpn应用程序 我是通过引用创建VPN服务的 VpnService.Builder=new VpnService.Builder(); //使用预定地址创建本地TUN接口。在你的应用程序中, //在握手过程中,通常使用从VPN网关返回的值。 ParcelFileDescriptor localTunnel=builder .addAddress(“192.168.2.2”,24) .addRoute(“0.0.0.0”,0) .addDnsServer(“192.
VpnService.Builder=new VpnService.Builder();
//使用预定地址创建本地TUN接口。在你的应用程序中,
//在握手过程中,通常使用从VPN网关返回的值。
ParcelFileDescriptor localTunnel=builder
.addAddress(“192.168.2.2”,24)
.addRoute(“0.0.0.0”,0)
.addDnsServer(“192.168.1.1”)
.建立();
VPN服务启动。但当我尝试浏览谷歌或其他网址时。它无法加载?有人能给我解释一下吗
.addAddress(“192.168.2.2”,24)此地址是什么==>此创建TUN接口
但是这个TUN接口将如何与Internet通信?您应该在应用程序上管理到Internet的连接(即收听192.168.2.2)。你是VPN。。。
VpnService.Builder builder = new VpnService.Builder();
// Create a local TUN interface using predetermined addresses. In your app,
// you typically use values returned from the VPN gateway during handshaking.
ParcelFileDescriptor localTunnel = builder
.addAddress("192.168.2.2", 24)
.addRoute("0.0.0.0", 0)
.addDnsServer("192.168.1.1")
.establish();
<service android:name=".MyVpnService"
android:permission="android.permission.BIND_VPN_SERVICE">
<intent-filter>
<action android:name="android.net.VpnService"/>
</intent-filter>
</service>