LinuxÖеĶ˿ÚÕ¼Óüì²é²Ù×÷Ïê½â
LinuxÖеĶ˿ÚÕ¼Óüì²é²Ù×÷Ïê½â
ÔÚLinux²Ù×÷ϵͳÖУ¬ÍøÂçͨѶÊÇͨ¹ý¶Ë¿ÚÀ´ÊµÏֵģ¬²î±ðµÄ¶Ë¿Ú¶ÔÓ¦×Ųî±ðµÄÍøÂçЧÀÍ»òÓ¦ÓóÌÐò¡£ÔÚ¿ª·¢»òÔËάÀú³ÌÖУ¬¾³£»áÓöµ½ÐèÇóÒª¼ì²éij¸ö¶Ë¿ÚÊÇ·ñ±»Õ¼Óã¬ÒÔÈ·±£Ð§ÀÍÄܹ»Õý³£Æô¶¯¡£±¾ÎĽ«ÏêϸÏÈÈÝÔÚLinuxÇéÐÎÖÐÔõÑù¾ÙÐж˿ÚÕ¼Óüì²é²Ù×÷£¬°üÀ¨Ê¹ÓÃÏÂÁîÐй¤¾ßºÍ±à³ÌÓïÑÔ±àдµÄ´úÂëʾÀý¡£
Ò»¡¢Ê¹ÓÃÏÂÁîÐй¤¾ß¼ì²é¶Ë¿ÚÕ¼ÓÃÇéÐÎ
netstatÏÂÁî
netstatÊÇÒ»¸öÓÃÀ´ÏÔʾÍøÂç״̬ÐÅÏ¢µÄÏÂÁîÐй¤¾ß£¬Í¨¹ýËü¿ÉÒÔÉó²éϵͳÖпª·ÅµÄ¶Ë¿ÚÒÔ¼°¶ÔÓ¦µÄÀú³Ì¡£ÒÔÏÂÊÇһЩnetstatÏÂÁîµÄ³£ÓÃÑ¡Ï
-t£ºÏÔʾTCP¶Ë¿Ú
-u£ºÏÔʾUDP¶Ë¿Ú
-n£ºÏÔʾÊý×ÖÃûÌ㨲»ÆÊÎöÓòÃû£©
-p£ºÏÔʾÀú³Ì±êʶ·ûºÍÀú³ÌÃû³Æ
ͨ¹ýÍŽáÕâЩѡÏ¿ÉÒÔÓÃÒÔÏÂÏÂÁîÉó²éϵͳÖÐËùÓеļàÌý¶Ë¿Ú¼°¶ÔÓ¦µÄÀú³Ì£º
netstat -tulnp
µÇ¼ºó¸´ÖÆ
ssÏÂÁî
ssÊÇnetstatµÄÌæ»»¹¤¾ß£¬ÐÔÄܸüºÃ£¬Ó÷¨Ò²¸ü¾«Á·¡£ÓënetstatÀàËÆ£¬ssÒ²¿ÉÒÔÉó²é¶Ë¿ÚÕ¼ÓÃÇéÐΡ£ÒÔÏÂÊÇÒ»¸ö³£ÓõÄssÏÂÁîʾÀý£º
ss -tlnp
µÇ¼ºó¸´ÖÆ
ÕâÌõÏÂÁî»áÏÔʾϵͳÖÐËùÓд¦ÓÚ¼àÌý״̬µÄTCP¶Ë¿Ú¼°¶ÔÓ¦µÄÀú³Ì¡£
¶þ¡¢Ê¹Óñà³ÌÓïÑÔ±àд´úÂë¼ì²é¶Ë¿ÚÕ¼ÓÃÇéÐÎ
³ýÁËÏÂÁîÐй¤¾ßÍ⣬ÎÒÃÇÒ²¿ÉÒÔʹÓñà³ÌÓïÑÔÀ´±àд´úÂëÀ´¼ì²é¶Ë¿ÚÕ¼ÓÃÇéÐΡ£ÏÂÃæÒÔPythonΪÀý£¬Õ¹Ê¾ÔõÑùͨ¹ý±à³ÌÓïÑÔÉó²é¶Ë¿ÚÕ¼ÓÃÇéÐΡ£
import socket def check_port(port): try: s = socket.socket(socket.AF_INET, socket.SOCK_STREAM) s.bind(("0.0.0.0", port)) s.close() return True except Exception as e: return False port_to_check = 8080 if check_port(port_to_check): print(f"¶Ë¿Ú {port_to_check} ¿ÉÓÃ") else: print(f"¶Ë¿Ú {port_to_check} Òѱ»Õ¼ÓÃ")
µÇ¼ºó¸´ÖÆ
ÒÔÉÏÊÇÒ»¸ö¼òÆÓµÄPython¾ç±¾£¬Í¨¹ý½¨ÉèÒ»¸ösocketÅþÁ¬À´¼ì²éÖ¸¶¨¶Ë¿ÚÊÇ·ñ±»Õ¼Óá£Í¨¹ýŲÓÃcheck_portº¯Êý£¬²¢´«ÈëÐèÒª¼ì²éµÄ¶Ë¿ÚºÅ£¬¼´¿É»ñÈ¡µ½¸Ã¶Ë¿ÚµÄÕ¼ÓÃÇéÐΡ£
×ܽ᣺
±¾ÎÄÏêϸÏÈÈÝÁËÔÚLinuxÇéÐÎÖÐÔõÑùͨ¹ýÏÂÁîÐй¤¾ßºÍ±à³ÌÓïÑÔÀ´¼ì²é¶Ë¿ÚÕ¼ÓÃÇéÐΡ£Í¨¹ýʹÓÃnetstat¡¢ssÏÂÁî»ò±àдPython´úÂ룬ÎÒÃÇ¿ÉÒÔÇáËɵػñÈ¡µ½¶Ë¿ÚÕ¼ÓÃÇéÐΣ¬×ÊÖúÎÒÃÇÈ·±£ÏµÍ³Ð§À͵ÄÕý³£Æô¶¯ºÍÔËÐС£Ï£ÍûÒÔÉÏÄÚÈݶԶÁÕßÔÚÏÖʵÊÂÇéÖÐÓÐËù×ÊÖú¡£
ÒÔÉϾÍÊÇLinuxÖеĶ˿ÚÕ¼Óüì²é²Ù×÷Ïê½âµÄÏêϸÄÚÈÝ£¬¸ü¶àÇë¹Ø×¢±¾ÍøÄÚÆäËüÏà¹ØÎÄÕ£¡