马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。
您需要 登录 才可以下载或查看,没有账号?立即注册
x
主题
本文主要描述webrtc开辟过程中所需的情况搭建
情况:
运行情况:ubuntu 20.04
Node.js情况搭建
安装编译 Node.js 所需的依赖包:
- sudo apt-get install -y build-essential libssl-dev
复制代码 下载 Node.js 源码:
- curl -sL https://nodejs.org/dist/v14.19.0/node-v14.19.0.tar.gz -o node-v14.19.0.tar.gz
复制代码 解压源码包:
- tar -xzf node-v14.19.0.tar.gz
复制代码 设置、编译和安装 Node.js:
- sudo make && sudo make install
复制代码 验证 Node.js 和 npm 的安装
测试
app.js
- // 引入 http 模块
- const http = require('http');
- // 创建一个 HTTP 服务器
- const server = http.createServer((req, res) => {
- // 设置 HTTP 响应头
- res.statusCode = 200;
- res.setHeader('Content-Type', 'text/plain');
- // 向客户端发送响应
- res.end('Hello, World!\n');
- });
- // 指定服务器监听的端口号
- const port = 3000;
- server.listen(port, () => {
- console.log(`服务器正在监听端口 ${port}`);
- });
复制代码 coturn搭建
ubuntu版本
安装 COTURN 软件包:
- sudo apt-get install coturn
复制代码 编辑 COTURN 设置文件:
- sudo vim /etc/coturn/turnserver.conf
复制代码 请根据实际情况修改以下设置项:
- realm: 设置 TURN 服务器的域名或 realm。
- user: 设置 TURN 服务器的用户名和密码。
- static-auth-secret: 设置身份验证的密钥。
- server-name: 设置 TURN 服务器的域名或 IP 地址。
- #中继服务器监听的IP地址,NAT环境下直接写私网IP地址,可以指定多个IP
- listening-ip= 你自己的内网IP
- #中继服务器转发地址(本地IP地址将用于传递数据包的给每个端),和监听地址一样
- #一般不开
- #relay-ip=你自己的公网ip
- #外部IP,NAT环境下直接写:公网IP/私网IP
- external-ip=公网ip/内网ip
- #cli-password=123456
- #打开fingerprint的注释,使用长期证书机制。
- fingerprint
- #打开密码验证,使用短期证书机制。
- lt-cred-mech
- #服务器名称,用于OAuth认证,默认和realm相同,直接填公网ip.部分浏览器本段不设可能会引发cors错误。
- server-name=公网ip
- # TURN REST API的长期凭证机制范围,同样设为ip,同server-name.
- realm=公网ip
- #移动的ICE(MICE)的规范支持。
- mobility
- #快捷的添加用户是使用user=XXX:XXXX的方式。
- user=jbj:123456
复制代码 启动 COTURN 服务:
- sudo systemctl start coturn
复制代码 centos版本
- # 更新系统包
- sudo yum update -y
- # 安装构建工具和 OpenSSL 开发库
- sudo yum groupinstall -y "Development Tools"
- sudo yum install -y openssl-devel
- sudo yum install -y coturn
- sudo vim /etc/turnserver.conf
复制代码- #中继服务器监听的IP地址,NAT环境下直接写私网IP地址,可以指定多个IP
- listening-ip=172.23.111.111
- #中继服务器转发地址(本地IP地址将用于传递数据包的给每个端),和监听地址一样
- #relay-ip=8.138.111.111
- #外部IP,NAT环境下直接写:公网IP/私网IP
- external-ip=8.138.111.111
- cli-password=123456
- #打开fingerprint的注释,使用长期证书机制。
- fingerprint
- #打开密码验证,使用短期证书机制。
- lt-cred-mech
- #服务器名称,用于OAuth认证,默认和realm相同,直接填公网ip.部分浏览器本段不设可能会引发cors错误。
- server-name=8.138.111.111
- # TURN REST API的长期凭证机制范围,同样设为ip,同server-name.
- realm=8.138.111.111
- #移动的ICE(MICE)的规范支持。
- mobility
- #快捷的添加用户是使用user=XXX:XXXX的方式。
- user=jbj:123456
- cert=/www/server/nginx/webrtc/cert.pem
- pkey=/www/server/nginx/webrtc/key.pem
复制代码 查抄 COTURN 服务状态:
- #开启
- sudo systemctl restart coturn
- sudo systemctl status coturn
复制代码 之后,可以使用 COTURN 服务器提供的 STUN 和 TURN 功能,资助 WebRTC 等实时通信应用程序解决 NAT 穿透问题。
也可以使用下令行启动
- # nohup是重定向命令,输出都将附加到当前目录的 nohup.out 文件中;
- # 命令后加 & ,后台执行起来后按
- ctr+c,不会停止
- sudo nohup turnserver ‐L 0.0.0.0 ‐a ‐u jbj:123456 ‐v ‐f ‐r nort.gov &
- # 前台启动
- sudo turnserver ‐L 0.0.0.0 ‐a ‐u jbj:123456 ‐v ‐f ‐r nort.gov
- #然后查看相应的端口号3478是否存在进程
- sudo lsof ‐i:3478
复制代码
sar网络上传下载检测
- sudo apt-get install sysstat
复制代码- #每1s检测一次
- sudo sar -n DEV 1
复制代码
- 09:03:19 PM: 这表示输出统计信息的时间是下午 9 点 3 分 19 秒。
网络接口信息:
- lo: 这是本地回环接口,用于本机之间的通信。
- ens33: 这是主网卡接口。
- docker0: 这是 Docker 容器网桥接口。
- docker_gwbridge: 这是 Docker 网关桥接口。
网络流量统计指标:
- rxpck/s: 每秒吸收的数据包数量。
- txpck/s: 每秒发送的数据包数量。
- rxkB/s: 每秒吸收的数据量,单位为 KB。
- txkB/s: 每秒发送的数据量,单位为 KB。
- rxcmp/s: 每秒吸收的压缩数据包数量。
- txcmp/s: 每秒发送的压缩数据包数量。
- rxmcst/s: 每秒吸收的多播数据包数量。
- %ifutil: 网卡利用率百分比。
nginx情况搭建
安装 Nginx 编译依赖
- sudo apt-get install build-essential libtool zlib1g-dev libpcre3 libpcre3-dev openssl
复制代码 下载 Nginx 源码
- wget http://nginx.org/download/nginx-1.15.8.tar.gz
- tar xvzf nginx-1.15.8.tar.gz
- cd nginx-1.15.8/
复制代码 设置 Nginx 编译参数 (支持 HTTPS)
- ./configure --with-http_ssl_module
复制代码 编译安装
- # 编译 Nginx
- make
- # 安装 Nginx
- sudo make install
- 查看 Nginx 的编译参数
- nginx -V
- --with-http_ssl_module 表示 Nginx 已经编译了对 SSL/TLS 协议的支持。
复制代码
学习资料分享
0voice · GitHub
免责声明:如果侵犯了您的权益,请联系站长,我们会及时删除侵权内容,谢谢合作!更多信息从访问主页:qidao123.com:ToB企服之家,中国第一个企服评测及商务社交产业平台。 |