特定のポートの状態を「LISTENING」、「CLOSE_WAIT」、「ESTABLISHED」にトラッキングするのに役立ちます。 私はnetstatコマンドとアナログ・ソリューションがあります。Luaの "ソケット"ライブラリを使ってポートの状態を調べることはできますか?
local command = 'netstat -anp tcp | find ":1926 " '
local h = io.popen(command,"rb")
local result = h:read("*a")
h:close()
print(result)
if result:find("ESTABLISHED") then
print("Ok")
end
をしかし、私はLua socket libraryと同じことを行う必要があります。 可能ですか?
なぜですか?確かにあなたは自分のソケットの状態を知っていますか? 'listen()'を呼び出すと、それは聞こえます。あなたが 'connect()'または 'accept()'を呼び出した場合、それは設定されています。ストリームを受信して終了した場合は、CLOSE_WAITにあります。 – EJP
@EJP質問には、同じプロセスがクエリを行うことによってソケットが所有されているとは示されていません。それでも、一部の州を簡単に推論することはできません。 TIME_WAIT - カーネルに問い合わせることなく –