通过WEBRTC结合sutn服务器实现获取真实主机IP

这里我使用webrc结合stun,通过js验证测试:

<!DOCTYPE html>
<html>
	<head>
		<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
	</head>
	<body>
		<script>
			
			// turn 配置
			const config = {
				iceServers: [{
					// urls: "stun:stun.l.google.com:19302" // 这里使用谷歌,线上部署直接替换
				}]
			};

			// 构建
			let pc = new RTCPeerConnection(config);
			
			pc.onicecandidate = function(event) {
				if(event.candidate)
				    handleCandidate(event.candidate.candidate);
			}
			
			 function handleCandidate(candidate) { 
				 if (candidate.indexOf("srflx") != -1) {
					 console.log(candidate)
					 var regex = /([0-9]{1,3}(\.[0-9]{1,3}){3}|[a-f0-9]{1,4}(:[a-f0-9]{1,4}){7})/
					 var ip_addr = regex.exec(candidate)[0];
					 alert("Your public network ip: "+ ip_addr)
				 }	
			 }
			 
			pc.createDataChannel("");
			
			pc.createOffer(function(result){
			    pc.setLocalDescription(result);
			}, function(){});
		
			
		</script&
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值