编译 ntop/n2n

git 导入 ntop/n2n 源码,编译生成 n2n 的 edge,supernode 可执行文件
https://github.com/ntop/n2n.git

git clone https://github.com/ntop/n2n.git -b 2.6-stable ntop-n2n
cd ntop-n2n
./autogen.sh  # 自动配置 Makefile
make

生成可执行文件:

  • edge
  • supernode

配置文件:

  • ./packages/etc/n2n/edge.conf.sample
  • ./packages/etc/n2n/supernode.conf.sample

Dockerfile

目录文件:

# docker build --force-rm n2n-supernode -t ntp/n2n-supernode:v2.6.1
FROM debian:latest

MAINTAINER Minh-Quan TRAN "xwiron@aliyun.com"

COPY edge.conf.sample /etc/n2n/edge.conf
COPY supernode.conf.sample /etc/n2n/supernode.conf
COPY supernodes.list.sample /etc/n2n/supernodes.list

COPY edge /usr/sbin/edge
COPY supernode /usr/sbin/supernode

RUN chmod +x /usr/sbin/edge
RUN chmod +x /usr/sbin/supernode

COPY libc6-udeb_2.28-10_amd64.udeb libc6-udeb_2.28-10_amd64.udeb
COPY libcrypto1.1-udeb_1.1.1d-0+deb10u3_amd64.udeb libcrypto1.1-udeb_1.1.1d-0+deb10u3_amd64.udeb

RUN dpkg -i libc6-udeb_2.28-10_amd64.udeb
RUN dpkg -i libcrypto1.1-udeb_1.1.1d-0+deb10u3_amd64.udeb

RUN rm libc6-udeb_2.28-10_amd64.udeb
RUN rm libcrypto1.1-udeb_1.1.1d-0+deb10u3_amd64.udeb

RUN useradd n2n -s /sbin/nologin

# main listen 0.0.0.0:5556
EXPOSE 5643

# management listen 127.0.0.1:5645
# EXPOSE 5645

# USER
USER n2n

# COMMAND
CMD ["/usr/sbin/supernode", "/etc/n2n/supernode.conf"]

docker run image

从 git 导出文件,可能会失去可执行属性。
chomod +x edge supernode

docker run --restart=always \
    --name n2n-supernode-v2.6\
    -p <port>:5643/udp \
    -v /[host-path]/config:/etc/n2n \
    -d ntop/n2n-supernode:v2.6

要支持 minicast 无线投屏,必须要有 WiFi 网卡。

  1. Windosw 设置 》 系统 》投影到此电脑 设置

    • 即:第一个选所有位置,第二个选仅第一次,第三个选从不,第四个选择关;
  2. Windosw 服务里面的“SSDP Discovery”服务是运行的;(UPNP)
  3. 保证“网络”--“属性”里面的媒体流式处理选项里都是”允许"的;
  4. 也是最重要一点,保证域防火墙和专用网络防火墙是关闭的,如果你连接的wifi选择了公用网络,那就需要将公用网络的防火墙关闭;
  5. 保证电脑和手机连接的同一个wifi (同一个网络)。

Windows 搜索 “连接”, 打开连接应用。

QQ拼音截图20200517103104.png
QQ拼音截图20200517103128.png

https://mirrors.tuna.tsinghua.edu.cn/help/pypi/

pypi 镜像使用帮助

pypi 镜像每 5 分钟同步一次。
临时使用

pip install -i https://pypi.tuna.tsinghua.edu.cn/simple some-package

注意,simple 不能少, 是 https 而不是 http
设为默认

升级 pip 到最新的版本 (>=10.0.0) 后进行配置:

pip install pip -U
pip config set global.index-url https://pypi.tuna.tsinghua.edu.cn/simple

如果您到 pip 默认源的网络连接较差,临时使用本镜像站来升级 pip:

pip install -i https://pypi.tuna.tsinghua.edu.cn/simple pip -U

作为前端开发者我们经常会使用npm或yarn,我们都知道npm和yarn默认镜像在国外,国内访问这些镜像速度会比较慢,下面介绍修改npm和yarn源的方法

一. npm和yarn源的简单修改(以淘宝镜像为例)

npm

  1. 临时修改(只生效一次)
    npm install 包的名字 --registry https://registry.npm.taobao.org
  2. 设置npm的配置项(全局配置)
    查看npm源的当前地址

npm config get registry

设置淘宝镜像
npm config set registry https://registry.npm.taobao.org

yarn

  1. 临时修改(只生效一次)
    yarn save 包的名字 --registry https://registry.npm.taobao.org/
  2. 设置yarn的配置项(全局配置)

查看yarn源的当前地址
yarn config get registry

设置淘宝镜像
yarn config set registry https://registry.npm.taobao.org/

二. 使用第三方软件快速修改、切换 npm和yarn的源(以淘宝镜像为例)
(1)分别修改npm和yarn源(经实际测试,这种方法修改一个源另一个源也会同时修改)

npm

nrm 是一个 NPM 源管理器,允许你快速地在如下 NPM 源间切换

安装
npm install -g nrm

列出可选的源

nrm ls

* npm ---- https://registry.npmjs.org/
  cnpm --- http://r.cnpmjs.org/
  taobao - https://registry.npm.taobao.org/
  nj ----- https://registry.nodejitsu.com/
  rednpm - http://registry.mirror.cqupt.edu.cn/
  npmMirror  https://skimdb.npmjs.com/registry/
  edunpm - http://registry.enpmjs.org/

带 * 的是当前使用的源

切换

切换到taobao镜像源

nrm use taobao
   Registry has been set to: https://registry.npm.taobao.org/

测试源的响应时间

测试所有源的响应时间:

nrm test

  npm ---- 2930ms
  cnpm --- 300ms
* taobao - 292ms
  nj ----- Fetch Error
  rednpm - Fetch Error
  npmMirror  1626ms
  edunpm - Fetch Error

可以多次测量来得到更精确的结果
更多nrm使用方法访问nrm的gitHub仓库
https://github.com/Pana/nrm

yarn

yrm 是一个 yarn源管理器,允许你快速地在yarn源间切换

安装
npm install -g yrm

列出可选的源

yrm ls

  npm ---- https://registry.npmjs.org/
  cnpm --- http://r.cnpmjs.org/
* taobao - https://registry.npm.taobao.org/
  nj ----- https://registry.nodejitsu.com/
  rednpm - http://registry.mirror.cqupt.edu.cn/
  npmMirror  https://skimdb.npmjs.com/registry/
  edunpm - http://registry.enpmjs.org/
  yarn --- https://registry.yarnpkg.com

带 * 的是当前使用的源

切换

切换到taobao镜像源

yrm use taobao

   YARN Registry has been set to: https://registry.npm.taobao.org/

测试源的响应时间

测试所有源的响应时间:

yrm test

  npm ---- 784ms
  cnpm --- 290ms
* taobao - 297ms
  nj ----- Fetch Error
  rednpm - Fetch Error
  npmMirror  1353ms
  edunpm - Fetch Error
  yarn --- Fetch Error

可以多次测量来得到更精确的结果
更多yrm使用方法访问yrm的gitHub仓库
https://github.com/i5ting/yrm

(2)使用双源管理工具cgr (特感谢缤纷扫落叶推荐)

安装

npm install -g cgr

使用方法和前两种差别不大,下边附上使用方法网址
https://www.npmjs.com/package/cgr

【参考文章】
https://www.jianshu.com/p/309645729b2e
http://www.16boke.com/article/detail/154
https://laravel-china.org/articles/15976/yarn-accelerate-and-modify-mirror-source-in-china
https://www.npmjs.com/package/cgr