首先,在AWS安全组中配置所有需要使用UDP协议的端口。您可以通过使用以下命令打开特定端口:
aws ec2 authorize-security-group-ingress --group-name --protocol udp --port --cidr
例如,以下命令将允许IP地址为1.2.3.4的用户访问UDP端口3000和3001:
aws ec2 authorize-security-group-ingress --group-name my-security-group --protocol udp --port 3000-3001 --cidr 1.2.3.4/32
如果您的应用程序使用了AWS Elastic Load Balancer,则需要确认它的配置能够处理多个UDP端口。
进入Elastic Load Balancer管理控制台,并单击“监听器”选项卡。从这里,您可以添加新端口并映射到您的实例上。
或者,您可以使用以下AWS CLI命令添加新的UDP监听器:
aws elbv2 create-listener --load-balancer-arn --protocol UDP --protocol-version 4 --port 3000
在您的应用程序代码中,您需要为每个需要侦听UDP端口的进程打开套接字。以下是使用Node.js构建UDP服务器的示例代码:
const dgram = require('dgram');
const server1 = dgram.createSocket('udp4');
const server2 = dgram.createSocket('udp4');
server1.on('message', (msg, rinfo) => {
console.log(`Message received from client: ${msg.toString()}`);
});
server1.bind(3000);
server2.on('message', (msg, rinfo) => {
console.log(`Message received from client: ${msg.toString()}`);
});
server2.bind(3001);
通过打开两个