Yin的笔记本

vuePress-theme-reco Howard Yin    2021 - 2025
Yin的笔记本 Yin的笔记本

Choose mode

  • dark
  • auto
  • light
Home
Category
  • CNCF
  • Docker
  • namespaces
  • Kubernetes
  • Kubernetes对象
  • Linux
  • MyIdeas
  • Revolution
  • WebRTC
  • 云计算
  • 人工智能
  • 分布式
  • 图像处理
  • 图形学
  • 微服务
  • 数学
  • OJ笔记
  • 博弈论
  • 形式语言与自动机
  • 数据库
  • 服务器运维
  • 编程语言
  • C
  • Git
  • Go
  • Java
  • JavaScript
  • Python
  • Nvidia
  • Shell
  • Tex
  • Rust
  • Vue
  • 视频编解码
  • 计算机网络
  • SDN
  • 论文笔记
  • 讨论
  • 边缘计算
  • 量子信息技术
Tag
TimeLine
About
查看源码
author-avatar

Howard Yin

304

Article

153

Tag

Home
Category
  • CNCF
  • Docker
  • namespaces
  • Kubernetes
  • Kubernetes对象
  • Linux
  • MyIdeas
  • Revolution
  • WebRTC
  • 云计算
  • 人工智能
  • 分布式
  • 图像处理
  • 图形学
  • 微服务
  • 数学
  • OJ笔记
  • 博弈论
  • 形式语言与自动机
  • 数据库
  • 服务器运维
  • 编程语言
  • C
  • Git
  • Go
  • Java
  • JavaScript
  • Python
  • Nvidia
  • Shell
  • Tex
  • Rust
  • Vue
  • 视频编解码
  • 计算机网络
  • SDN
  • 论文笔记
  • 讨论
  • 边缘计算
  • 量子信息技术
Tag
TimeLine
About
查看源码
  • 学校云计算中心虚拟机配置笔记

    • 网络配置
      • 内网穿透

      学校云计算中心虚拟机配置笔记

      vuePress-theme-reco Howard Yin    2021 - 2025

      学校云计算中心虚拟机配置笔记


      Howard Yin 2021-08-09 10:00:03 服务器运维

      # 网络配置

      初始状态:

      • 计算中心有两个网关:
        • 内网网关172.22.31.254,只能上校园网
        • 公网关172.22.5.255,只能上公网
      • 虚拟机默认网关为内网网关172.22.31.254

      目标状态:

      • 既能上公网又能上校园网

      宿舍DHCP得到的IP地址为10.208.XXX.XXX,实验室DHCP得到的IP地址为10.201.XXX.XXX,201=11001001、208=11010000。于是推测校园网IP范围至少是10.192.0.0/11,至多是10.192.0.0/8。

      于是,添加路由:

      route add -net 10.0.0.0/8 gw 172.22.31.254
      route add default gw 172.22.5.255
      
      1
      2

      测试内网和外网均可ping通,表明路由正确。

      需要将上述路由添加为永久配置。网上查到的资料都是要改/etc/network/interfaces里的配置,这种配置方法还要指定网卡。我只想要添加两个路由而已,用指令配置明明就不需要指定网卡,不喜。暂时没找到合适的配置文件,所以我把上面那两条指令直接加了个脚本在/etc/ppp/ip-up.d/。

      # 内网穿透

      首先尝试最基础的FRP方案:

      FRP_URL=https://github.com/fatedier/frp/releases/download/v0.34.3/frp_0.34.3_linux_amd64.tar.gz
      PROXY=http://10.201.224.251:10801
      wget $FRP_URL -e HTTP_PROXY=$PROXY -e HTTPS_PROXY=$PROXY -O ~/frp.tar.gz &&
          mkdir -p /etc/frp && tar -zxvf ~/frp.tar.gz -C /etc/frp --strip-components=1 &&
          rm -f ~/frp.tar.gz
      cat > /etc/frp/frpc.ini <<EOF
      [common]
      server_addr = 10.201.224.251
      server_port = 7000
      log_level = debug
      
      [Local]
      type = tcp
      local_ip = localhost
      local_port = 22
      remote_port = 22
      
      [Vino]
      type = tcp
      local_ip = localhost
      local_port = 5900
      remote_port = 5900
      EOF
      cat > /etc/systemd/system/frpc.service <<EOF
      [Unit]
      Description=Frp Client Service
      After=network.target
      
      [Service]
      Type=simple
      User=nobody
      Restart=on-failure
      RestartSec=5s
      ExecStart=/etc/frp/frpc -c /etc/frp/frpc.ini
      ExecReload=/etc/frp/frpc reload -c /etc/frp/frpc.ini
      
      [Install]
      WantedBy=multi-user.target
      EOF
      systemctl enable frpc.service && systemctl start frpc.service && systemctl status frpc.service
      
      1
      2
      3
      4
      5
      6
      7
      8
      9
      10
      11
      12
      13
      14
      15
      16
      17
      18
      19
      20
      21
      22
      23
      24
      25
      26
      27
      28
      29
      30
      31
      32
      33
      34
      35
      36
      37
      38
      39
      40

      报错:Accept new mux stream error: EOF,无法连接,遂放弃

      改用SSH隧道方案:

      ssh -NR 0.0.0.0:2222:localhost:22 yin@10.201.224.251
      
      1

      在sshd主机上登录:

      ssh root@localhost -p 2222
      
      1

      发现可以登录,但在同样网络环境下的另一台主机上登录:

      ssh root@192.168.1.11 -p 2222
      
      1

      发现不能登录,lsof发现sshd主机只监听了localhost,把0.0.0.0换成*或者加上-g均无效。迫不得已,只能在sshd主机上再加一层FRP:

      FRP_URL=https://github.com/fatedier/frp/releases/download/v0.34.3/frp_0.34.3_linux_amd64.tar.gz
      PROXY=http://10.201.224.251:10801
      wget $FRP_URL -e HTTP_PROXY=$PROXY -e HTTPS_PROXY=$PROXY -O ~/frp.tar.gz &&
          mkdir -p /etc/frp && tar -zxvf ~/frp.tar.gz -C /etc/frp --strip-components=1 &&
          rm -f ~/frp.tar.gz
      cat > /etc/frp/frpc.ini <<EOF
      [common]
      server_addr = 10.201.224.251
      server_port = 7000
      log_level = debug
      
      [Local]
      type = tcp
      local_ip = localhost
      local_port = 2222
      remote_port = 2222
      EOF
      /etc/frp/frpc -c /etc/frp/frpc.ini
      
      1
      2
      3
      4
      5
      6
      7
      8
      9
      10
      11
      12
      13
      14
      15
      16
      17
      18

      好了终于能连上ssh了,可喜可贺。接下来用同样的方法把远程桌面也加入转发。

      在sshd主机:

      FRP_URL=https://github.com/fatedier/frp/releases/download/v0.34.3/frp_0.34.3_linux_amd64.tar.gz
      PROXY=http://10.201.224.251:10801
      wget $FRP_URL -e HTTP_PROXY=$PROXY -e HTTPS_PROXY=$PROXY -O ~/frp.tar.gz &&
          mkdir -p /etc/frp && tar -zxvf ~/frp.tar.gz -C /etc/frp --strip-components=1 &&
          rm -f ~/frp.tar.gz
      cat > /etc/frp/frpc.ini <<EOF
      [common]
      server_addr = 10.201.224.251
      server_port = 7000
      log_level = debug
      
      [Local]
      type = tcp
      local_ip = localhost
      local_port = 2222
      remote_port = 2222
      
      [Local]
      type = tcp
      local_ip = localhost
      local_port = 2259
      remote_port = 2259
      EOF
      /etc/frp/frpc -c /etc/frp/frpc.ini
      
      1
      2
      3
      4
      5
      6
      7
      8
      9
      10
      11
      12
      13
      14
      15
      16
      17
      18
      19
      20
      21
      22
      23
      24

      在虚拟机:

      ssh -fNR 0.0.0.0:2222:localhost:22 yin@10.201.224.251
      ssh -fNR 0.0.0.0:2259:localhost:5900 yin@10.201.224.251
      
      1
      2

      搞定。

      帮助我们改善此页面!
      创建于: 2021-08-09 10:00:32

      更新于: 2021-08-09 10:00:32