This repository was archived by the owner on Jan 23, 2026. It is now read-only.
File tree Expand file tree Collapse file tree
jumpstarter-driver-http/jumpstarter_driver_http
jumpstarter-driver-tftp/jumpstarter_driver_tftp
jumpstarter/jumpstarter/common Expand file tree Collapse file tree Original file line number Diff line number Diff line change 66from aiohttp import web
77from jumpstarter_driver_opendal .driver import Opendal
88
9+ from jumpstarter .common .ipaddress import get_default_ip
910from jumpstarter .driver import Driver , export
1011
1112
@@ -41,18 +42,7 @@ def __post_init__(self):
4142 ]
4243 )
4344 if self .host is None :
44- self .host = self .get_default_ip ()
45-
46- def get_default_ip (self ):
47- try :
48- import socket
49-
50- with socket .socket (socket .AF_INET , socket .SOCK_DGRAM ) as s :
51- s .connect (("8.8.8.8" , 80 ))
52- return s .getsockname ()[0 ]
53- except Exception :
54- self .logger .warning ("Could not determine default IP address, falling back to 0.0.0.0" )
55- return "0.0.0.0"
45+ self .host = get_default_ip (logger = self .logger )
5646
5747 @classmethod
5848 def client (cls ) -> str :
Original file line number Diff line number Diff line change 99
1010from jumpstarter_driver_tftp .server import TftpServer
1111
12+ from jumpstarter .common .ipaddress import get_default_ip
1213from jumpstarter .driver import Driver , export
1314
1415
@@ -55,17 +56,7 @@ def __post_init__(self):
5556 self .storage = self .children ["storage" ]
5657
5758 if self .host == "" :
58- self .host = self .get_default_ip ()
59-
60- def get_default_ip (self ):
61- """Get the IP address of the default route interface"""
62- try :
63- with socket .socket (socket .AF_INET , socket .SOCK_DGRAM ) as s :
64- s .connect (("8.8.8.8" , 80 ))
65- return s .getsockname ()[0 ]
66- except Exception :
67- self .logger .warning ("Could not determine default IP address, falling back to 0.0.0.0" )
68- return "0.0.0.0"
59+ self .host = get_default_ip (logger = self .logger )
6960
7061 @classmethod
7162 def client (cls ) -> str :
Original file line number Diff line number Diff line change 1+ import logging
12import socket
23
34
@@ -12,3 +13,15 @@ def get_ip_address() -> str:
1213 s .connect (("1.1.1.1" , 0 ))
1314 address = s .getsockname ()[0 ]
1415 return address
16+
17+
18+ def get_default_ip (logger : logging .Logger | None = None ):
19+ """Get the IP address of the default route interface"""
20+ try :
21+ with socket .socket (socket .AF_INET , socket .SOCK_DGRAM ) as s :
22+ s .connect (("8.8.8.8" , 80 ))
23+ return s .getsockname ()[0 ]
24+ except Exception :
25+ if logger :
26+ logger .warning ("Could not determine default IP address, falling back to 0.0.0.0" )
27+ return "0.0.0.0"
You can’t perform that action at this time.
0 commit comments