簡體   English   中英

客戶端如何使用 EC2 連接到服務器

[英]How does the client connect to the server with EC2

我剛剛將我的套接字服務器放在 Amazon EC2 上,服務器已啟動並正在運行。 服務器套接字的端口是ss = new ServerSocket(30001); . 我將客戶端 class 內的套接字端口設置為什么? 它目前在本地主機上。 socket = new Socket("localhost", 30001); 亞馬遜 EC2 地址是
ec2-user@ec2-34-253-76-28.eu-west-1.compute.amazonaws.com我只是用這個替換 localhost 嗎?

如果客戶端是遠程的(與服務器不在同一主機上),那么,是的,使用主機的 DNS 名稱或公共 IP 地址。

您還必須允許與托管您的服務器應用程序的 EC2 實例的入站連接。 確保端口 30001 對您的客戶端的公共 IP 地址(或通過將 0.0.0.0/0 指示為源 CIDR 向世界)開放。 您可以通過Security Groups在 AWS 中執行此操作。

如果您將您的服務器暴露給世界,那么您應該(至少)為您的客戶端實施某種形式的身份驗證。

如果您的客戶端無法連接,請檢查幾件事:

  • 您的服務器套接字是否綁定到 0.0.0.0(或與 EC2 實例關聯的公共 IP)?
  • 您的服務器應用程序正在運行嗎?
  • netstat 是否顯示您的服務器應用程序正在偵聽端口 30001?
  • 您是否向 EC2 實例添加了一個安全組並添加了一個入口規則,允許從您的客戶端 IP(或世界)到端口 30001 的入站流量
  • 客戶端是否在阻止出站端口 30001 的網絡(例如公司)上運行

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM