에 연결하려고 합니다.프로그램VNC를 통해 LAN에서 라디에이터 밸브에 연결된 "큐브"(MAX eQ-3)를 검색합니다.
프로그램은 "[99] 소켓을 바인딩하는 동안 요청된 주소를 할당할 수 없습니다"라는 오류를 표시합니다.
노트북에서 프로그램을 실행하면 아무런 문제도 없고 모든 것이 잘 작동합니다.
따라서 VNC를 통해 연결할 때만 오류가 발생합니다.
tightvncserver
저는 다음 매개변수를 사용하여 Raspberry Pi 2에서 실행 중입니다 .
/usr/bin/tightvncserver :1 -geometry 1024x600 -depth 24 -dpi 96*
이 문제를 어떻게 해결해야 할지 모르겠습니다...
이것은 max_home_automation을 실행하기 전의 출력입니다.
pi@HomeBox2:~/vnc-server $ sudo netstat -tulpen
Active Internet connections (only servers)
Proto Recv-Q Send-Q Local Address Foreign Address State User Inode PID/Program name
tcp 0 0 0.0.0.0:5901 0.0.0.0:* LISTEN 1000 36997 7448/Xtightvnc
tcp 0 0 0.0.0.0:6001 0.0.0.0:* LISTEN 1000 36995 7448/Xtightvnc
tcp 0 0 0.0.0.0:22 0.0.0.0:* LISTEN 0 8339 366/sshd
tcp6 0 0 :::8080 :::* LISTEN 0 9866 367/domoticz
tcp6 0 0 :::22 :::* LISTEN 0 8341 366/sshd
tcp6 0 0 :::6144 :::* LISTEN 0 9868 367/domoticz
udp 0 0 0.0.0.0:68 0.0.0.0:* 0 5855 405/dhcpcd
udp 0 0 192.168.1.120:123 0.0.0.0:* 106 5947 391/ntpd
udp 0 0 127.0.0.1:123 0.0.0.0:* 0 8319 391/ntpd
udp 0 0 0.0.0.0:123 0.0.0.0:* 0 8306 391/ntpd
udp 0 0 0.0.0.0:5353 0.0.0.0:* 105 6915 266/avahi-daemon: r
udp 0 0 0.0.0.0:40423 0.0.0.0:* 105 6917 266/avahi-daemon: r
udp6 0 0 fe80::63a3:60e5:29b:123 :::* 106 5901 391/ntpd
udp6 0 0 ::1:123 :::* 0 8321 391/ntpd
udp6 0 0 :::123 :::* 0 8303 391/ntpd
udp6 0 0 :::36032 :::* 105 6918 266/avahi-daemon: r
udp6 0 0 :::5353 :::* 105 6916 266/avahi-daemon: r
실행 후는 다음과 같습니다.
pi@HomeBox2:~/vnc-server $ sudo netstat -tulpen
Active Internet connections (only servers)
Proto Recv-Q Send-Q Local Address Foreign Address State User Inode PID/Program name
tcp 0 0 0.0.0.0:5901 0.0.0.0:* LISTEN 1000 36997 7448/Xtightvnc
tcp 0 0 0.0.0.0:8081 0.0.0.0:* LISTEN 1000 64705 13932/max_home_auto
tcp 0 0 0.0.0.0:6001 0.0.0.0:* LISTEN 1000 36995 7448/Xtightvnc
tcp 0 0 0.0.0.0:22 0.0.0.0:* LISTEN 0 8339 366/sshd
tcp6 0 0 :::8080 :::* LISTEN 0 9866 367/domoticz
tcp6 0 0 :::22 :::* LISTEN 0 8341 366/sshd
tcp6 0 0 :::6144 :::* LISTEN 0 9868 367/domoticz
udp 0 0 0.0.0.0:68 0.0.0.0:* 0 5855 405/dhcpcd
udp 0 0 192.168.1.120:123 0.0.0.0:* 106 5947 391/ntpd
udp 0 0 127.0.0.1:123 0.0.0.0:* 0 8319 391/ntpd
udp 0 0 0.0.0.0:123 0.0.0.0:* 0 8306 391/ntpd
udp 0 0 0.0.0.0:5353 0.0.0.0:* 105 6915 266/avahi-daemon: r
udp 0 0 0.0.0.0:40423 0.0.0.0:* 105 6917 266/avahi-daemon: r
udp6 0 0 fe80::63a3:60e5:29b:123 :::* 106 5901 391/ntpd
udp6 0 0 ::1:123 :::* 0 8321 391/ntpd
udp6 0 0 :::123 :::* 0 8303 391/ntpd
udp6 0 0 :::36032 :::* 105 6918 266/avahi-daemon: r
udp6 0 0 :::5353 :::* 105 6916 266/avahi-daemon: r
이는 아무것도 반환하지 않습니다.
pi@HomeBox2:~/vnc-server $ sudo netstat -ulpen | awk '$1 !~ /^udp/ {print}; $4 ~ /:23272$/ {print}'
Active Internet connections (only servers)
Proto Recv-Q Send-Q Local Address Foreign Address State User Inode PID/Program name
답변1
"Max!" 소프트웨어는 포트 23272에서 UDP 멀티캐스트를 사용하여 "Cube"(출처:그들의 문서de.eq3.max.al.local.finder.CubeFinder
(독일어) 및 Java 클래스용 디컴파일된 코드소프트웨어).
표시되는 오류는 프로그램이 포트에 바인딩할 수 없으므로 다른 프로그램(다른 프로그램 또는 동일한 프로그램의 다른 인스턴스)이 해당 포트를 사용하고 있는 것으로 나타납니다.
포트 23272를 사용하는 프로세스를 확인하려면 다음을 실행하세요.
netstat -ulpen | awk '$1 !~ /^udp/ {print}; $4 ~ /:23272$/ {print}'
프로그램이 실패한 Raspberry Pi에서.
모든 프로세스 이름과 PID를 보려면 루트 권한으로 실행해야 할 수도 있습니다.
또한 "MAX!"를 실행하여 터미널에서(데스크탑/메뉴 바로가기 대신) 소프트웨어를 열어 인쇄할 수 있는 모든 정보를 볼 수 있습니다 stdout
.