linux客户端无法绑定端口号,为什么Linux客户端的情况下不支持端口共用?

也不是不可以, 如果是socket的话只要设置端口复用就可以实现,随便写一段代码演示一下

#/bin/python

import sys

import time

import socket

def start_tcp_client(ip, port):

#server port and ip

server_ip = ip

servr_port = port

tcp_client = socket.socket(socket.AF_INET, socket.SOCK_STREAM)

# 设置端口复用和地址复用

tcp_client.setsockopt(socket.SOL_SOCKET, socket.SO_REUSEADDR, 1)

tcp_client.setsockopt(socket.SOL_SOCKET, socket.SO_REUSEPORT, 1)

tcp_client.bind(('0.0.0.0', 23333))

tcp_client.connect((server_ip, servr_port))

# 没啥意义地一直接收数据

while True:

print tcp_client.recv(1024)

time.sleep(1)

ip = sys.argv[1]

port = int(sys.argv[2])

start_tcp_client(ip, port)

然后启动两个进程连接不同的数据库

p1

[root@chengqm test]# python same_port_socket.py 10.0.0.247 3306

M

5.7.9-log{De~uf~ÿ?CO,Gdn0{;uumysql_native_password

Xshell

p2

[root@chengqm test]# python same_port_socket.py 10.0.0.248 3306

M

5.7.9-logĕ-4WHKmÿ?TD":+ZHN~&mysql_native_password

查看端口状态

bVblB9x?w=907&h=64

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值