相关疑难解决方法(0)

在localhost上,如何选择一个空闲端口号?

我正在尝试进行进程间通信,因为我无法弄清楚如何在Windows下使用命名管道,我以为我会使用网络套接字.一切都在当地发生.服务器能够在单独的进程中启动从属服务器并侦听某个端口.奴隶完成他们的工作并将结果提交给主人.我如何确定哪个端口可用?我想我不能听80或21端口?

我正在使用Python,如果这会减少选择.

谢谢!

python sockets port ipc

145
推荐指数
4
解决办法
10万
查看次数

如何在Linux中找到开放端口?

是否有某种系统调用将返回端口是否可用?或者至少是一种传统的做法,不会让你的过程成为一个坏公民?

目前我正在这样做:

def find_open_port(min_port, max_port):
    s = socket.socket(socket.AF_INET, socket.SOCK_STREAM)
    for port in range(min_port, max_port):
        if port > max_port:
            raise IOError('Could not find a free port between {0} and {1}'.format(min_port, max_port))
        try:
            s.bind(('localhost', port))
            return port
        except socket.error as error:
            if error.strerror == 'Address already in use':
                continue
            else:
                raise error
Run Code Online (Sandbox Code Playgroud)

呸!

python unix linux networking tcp

4
推荐指数
1
解决办法
3537
查看次数

标签 统计

python ×2

ipc ×1

linux ×1

networking ×1

port ×1

sockets ×1

tcp ×1

unix ×1