OSX Mountain Lion 10.8.3을 사용 중이며 Mac을 새로 부팅했습니다.
서비스 (예 : 포트 80에서 Apache와 같은)를 시작하려고하지만, 이미 포트 80에서 계속 진행중인 작업이 있습니다.
telnet localhost 80
Trying ::1...
Connected to localhost.
Escape character is '^]'.
잠깐, 네가 말하는 걸 들었어. 너는 lsof 나 netstat로 찾을 수있다. 거기에는 아무것도 없다는 것 외에는
netstat -an | grep LISTEN | grep '\.80'
*comes back blank*
lsof -i :80 | grep LISTEN
*comes back blank
그래서 내가 유닉스 시스템에 대해 알고있는 것으로부터, 이것은 패킷 포워딩 규칙이되어야한다고 생각한다. 즉, 인바운드 포트 80에서 해당 서비스를 수신중인 다른 패킷으로 패킷이 전달되고 있습니다.
ipfw show
65535 0 0 allow ip from any to any
흠, 거기 특이한 건 없어요.
pfctl -s nat
No ALTQ support in kernel
ALTQ related functions disabled
그다지 이상한 것은 없다.
내 질문은 어떻게 모든 패킷 전달 규칙을 표시 할 수 있습니다 ... 리눅스에서 난 그냥 iptables -L -t NAT, 또는 iptables -L 할 수도 있습니다. 또는 OSX 전문가가이 문제를 진단하는 데 도움을 줄 수 있습니까?
lsof
당신이 사용 했던 grep은 비어있게됩니다. 포트 번호는 /etc/services
이름 에 매핑됩니다 . 시도해보십시오 lsof -i | grep http
...
-i :port
grep 인 경우에만 형식 을 사용하면 / etc / services 매핑이 문제가되지 않습니다 . 무슨 문제가있다 할 것이다 lsof
다른 사용자의 프로세스를 볼 루트 privs 및 필요, 그래서 당신은 사용해야합니다 sudo lsof -i :80
(그리고 나는이없이 그것을 시도 할 것입니다 grep
단지 만들기 위해, 확인 ...)
lsof -i :80
텔넷 세션에 연결되어있는 동안 시도해 보셨습니까 ? 그리고 http : // localhost / 를 시도하는 것과는 별개로 , 텔넷 프롬프트에서 무언가를 입력하면 뭔가가 나타납니다 ...? (다시, 나는 알고있다 : 당신이 그것을 그 방법으로 파악하더라도 그것은 당신의 질문에 대한 답이 될 수 없다 ...)