mirror of
https://github.com/vllm-project/vllm.git
synced 2025-10-20 14:53:52 +08:00
fix get_ip
error in pure ipv6 environment (#2931)
This commit is contained in:
@ -162,9 +162,16 @@ def make_async(func: Callable[..., T]) -> Callable[..., Awaitable[T]]:
|
||||
|
||||
|
||||
def get_ip() -> str:
|
||||
# try ipv4
|
||||
s = socket.socket(socket.AF_INET, socket.SOCK_DGRAM)
|
||||
s.connect(("8.8.8.8", 80)) # Doesn't need to be reachable
|
||||
return s.getsockname()[0]
|
||||
try:
|
||||
s.connect(("dns.google", 80)) # Doesn't need to be reachable
|
||||
return s.getsockname()[0]
|
||||
except OSError:
|
||||
# try ipv6
|
||||
s = socket.socket(socket.AF_INET6, socket.SOCK_DGRAM)
|
||||
s.connect(("dns.google", 80))
|
||||
return s.getsockname()[0]
|
||||
|
||||
|
||||
def get_distributed_init_method(ip: str, port: int) -> str:
|
||||
@ -172,9 +179,16 @@ def get_distributed_init_method(ip: str, port: int) -> str:
|
||||
|
||||
|
||||
def get_open_port() -> int:
|
||||
with socket.socket(socket.AF_INET, socket.SOCK_STREAM) as s:
|
||||
s.bind(("", 0))
|
||||
return s.getsockname()[1]
|
||||
# try ipv4
|
||||
try:
|
||||
with socket.socket(socket.AF_INET, socket.SOCK_STREAM) as s:
|
||||
s.bind(("", 0))
|
||||
return s.getsockname()[1]
|
||||
except OSError:
|
||||
# try ipv6
|
||||
with socket.socket(socket.AF_INET6, socket.SOCK_STREAM) as s:
|
||||
s.bind(("", 0))
|
||||
return s.getsockname()[1]
|
||||
|
||||
|
||||
def set_cuda_visible_devices(device_ids: List[int]) -> None:
|
||||
|
Reference in New Issue
Block a user