谷歌云代理商:如何配置谷歌云服务器的端口转发?

本文由【云老大】 TG@yunlaoda360 撰写

外部协议转发

  1. 创建防火墙规则:创建一个允许外部流量到达目标实例的防火墙规则。

    bash

    ini 复制代码
    gcloud compute firewall-rules create ALLOW_IPV4_FIREWALL_RULE_NAME \
        --target-tags=allow-ipv4-ext \
        --allow=tcp:80 \
        --source-ranges=0.0.0.0/0
  2. 创建虚拟机实例:创建一个虚拟机实例,并在实例上安装所需的服务器软件(如Apache)。

    bash

    sql 复制代码
    gcloud compute instances create VM_INSTANCE_NAME \
        --zone=ZONE \
        --image-family=debian-12 \
        --image-project=debian-cloud \
        --tags=allow-ipv4-ext \
        --metadata=startup-script='#! /bin/bash
        sudo apt-get update
        sudo apt-get install apache2 -y
        sudo a2ensite default-ssl
        sudo a2enmod ssl
        vm_hostname="$(curl -H "Metadata-Flavor:Google" \
        http://169.254.169.254/computeMetadata/v1/instance/name)"
        echo "Page served from: $vm_hostname" | \
        tee /var/www/html/index.html
        sudo systemctl restart apache2'
  3. 创建目标实例:创建一个目标实例,该实例包含上一步创建的虚拟机。

    bash

    ini 复制代码
    gcloud compute target-instances create TARGET_INSTANCE_NAME \
        --instance=VM_INSTANCE_NAME \
        --zone=ZONE
  4. 预留静态外部IP地址:预留一个静态外部IPv4地址。

    bash

    ini 复制代码
    gcloud compute addresses create IPV4_ADDRESS \
        --region=REGION
  5. 创建转发规则:创建一个转发规则,将TCP流量转发到目标实例。

    bash

    ini 复制代码
    gcloud compute forwarding-rules create IPV4_FORWARDING_RULE_NAME \
        --load-balancing-scheme=EXTERNAL \
        --region=REGION \
        --ip-protocol=TCP \
        --address=IPV4_ADDRESS \
        --ports=80 \
        --target-instance=TARGET_INSTANCE_NAME \
        --target-instance-zone=ZONE
  6. 测试设置 :获取转发规则的IP地址,并使用curl命令测试设置是否成功。

内部协议转发

  1. 创建目标实例:创建一个目标实例,该实例包含虚拟机。

    bash

    ini 复制代码
    gcloud compute target-instances create TARGET_INSTANCE_NAME \
        --instance=VM_INSTANCE_NAME \
        --zone=ZONE
  2. 创建转发规则:创建一个转发规则,将TCP流量转发到目标实例。

    bash

    ini 复制代码
    gcloud compute forwarding-rules create IPV4_FORWARDING_RULE_NAME \
        --load-balancing-scheme=INTERNAL \
        --network-tier=PREMIUM \
        --region=REGION \
        --ip-protocol=TCP \
        --ports=80 \
        --target-instance=TARGET_INSTANCE_NAME \
        --target-instance-zone=ZONE
  3. 创建测试客户端虚拟机:创建一个测试客户端虚拟机,用于发送流量到转发规则的IP地址。

    bash

    ini 复制代码
    gcloud compute instances create CLIENT_VM_NAME \
        --zone=ZONE \
        --image-family=debian-12 \
        --image-project=debian-cloud \
        --tags=allow-ssh
  4. 测试设置 :获取转发规则的IP地址,并使用curl命令测试设置是否成功。

相关推荐
野犬寒鸦几秒前
MySQL索引使用规则详解:从设计到优化的完整指南
java·数据库·后端·sql·mysql
思考的橙子6 分钟前
Springboot之会话技术
java·spring boot·后端
兆。3 小时前
电子商城后台管理平台-Flask Vue项目开发
前端·vue.js·后端·python·flask
weixin_437398213 小时前
RabbitMQ深入学习
java·分布式·后端·spring·spring cloud·微服务·rabbitmq
西京刀客8 小时前
Go多服务项目结构优化:为何每个服务单独设置internal目录?
开发语言·后端·golang
李匠20248 小时前
C++GO语言微服务之gorm框架操作MySQL
开发语言·c++·后端·golang
源码云商9 小时前
基于Spring Boot + Vue的高校心理教育辅导系统
java·spring boot·后端
黄俊懿10 小时前
【深入理解SpringCloud微服务】手写实现一个微服务分布式事务组件
java·分布式·后端·spring·spring cloud·微服务·架构师
Themberfue10 小时前
RabbitMQ ②-工作模式
开发语言·分布式·后端·rabbitmq
有梦想的攻城狮11 小时前
spring中的@Inject注解详情
java·后端·spring·inject