vncserverを起動できません:バインディング:要求されたアドレスを割り当てることができません(99)。

vncserverを起動できません:バインディング:要求されたアドレスを割り当てることができません(99)。

私はこれを私のRaspberry Piで使用しますvncsshしばらくうまくいきましたが、その後はこのガイドラインopenvpnRaspbianオペレーティングシステムを実行しているRaspberry Piに設定します。 Raspberry PiはもはやVNCサーバーにアクセスできないことを発見しました。

x11転送がssh機能していますが、vnc serverそのポートにアクセスできないため、起動すらできません。

$ sudo systemctl status vncserver-x11-serviced -l

● vncserver-x11-serviced.service - VNC Server in Service Mode daemon
   Loaded: loaded (/usr/lib/systemd/system/vncserver-x11-serviced.service; enabled)
   Active: active (running) since Sun 2018-01-21 14:25:11 GMT; 1s ago
Main PID: 8896 (vncserver-x11-s)
   CGroup: /system.slice/vncserver-x11-serviced.service
       ├─8896 /usr/bin/vncserver-x11-serviced -fg
       ├─8898 /usr/bin/vncserver-x11-core -service
       └─8913 /usr/bin/vncagent service 14

Jan 21 14:25:11 raspberrypi vncserver-x11[8898]: TcpListenerManager: not accepting connections: failed to listen on at least one address.
Jan 21 14:25:11 raspberrypi vncserver-x11[8898]: TcpListenerManager: not listening on [::1]::5900: bind: Cannot assign requested address (99)
Jan 21 14:25:11 raspberrypi vncserver-x11[8898]: TcpListenerManager: not accepting connections: failed to listen on at least one address.
Jan 21 14:25:11 raspberrypi vncserver-x11[8898]: TcpListenerManager: not listening on [::1]::5900: bind: Cannot assign requested address (99)
Jan 21 14:25:11 raspberrypi vncserver-x11[8898]: TcpListenerManager: not accepting connections: failed to listen on at least one address.
Jan 21 14:25:11 raspberrypi vncserver-x11[8898]: TcpListenerManager: not listening on [::1]::5900: bind: Cannot assign requested address (99)
Jan 21 14:25:11 raspberrypi vncserver-x11[8898]: TcpListenerManager: not accepting connections: failed to listen on at least one address.
Jan 21 14:25:11 raspberrypi vncserver-x11[8898]: TcpListenerManager: not listening on [::1]::5900: bind: Cannot assign requested address (99)
Jan 21 14:25:11 raspberrypi vncserver-x11[8898]: TcpListenerManager: not accepting connections: failed to listen on at least one address.
Jan 21 14:25:11 raspberrypi vncserver-x11[8898]: ConsoleDisplay: Found running X server (pid=1001)

そのポートでは何も実行されないようです。これは次の出力ですlsof

$ sudo lsof -i tcp

COMMAND    PID       USER   FD   TYPE DEVICE SIZE/OFF NODE NAME
cupsd      752       root   10u  IPv4  13511      0t0  TCP localhost:ipp (LISTEN)
cups-brow  756       root    5u  IPv4 313573      0t0  TCP localhost:48450->localhost:ipp (CLOSE_WAIT)
dnsmasq    914    dnsmasq    5u  IPv4  11726      0t0  TCP *:domain (LISTEN)
dnsmasq    914    dnsmasq    7u  IPv6  11728      0t0  TCP *:domain (LISTEN)
sshd       976       root    3u  IPv4  11842      0t0  TCP *:2718 (LISTEN)
tor        998 debian-tor    4u  IPv4  12125      0t0  TCP 192.168.254.159:49042->ks3352401.kimsufi.com:8090 (ESTABLISHED)
tor        998 debian-tor    7u  IPv4  14489      0t0  TCP localhost:9050 (LISTEN)
tor        998 debian-tor   11u  IPv4  15915      0t0  TCP 172.94.70.220:47186->166.70.170.234:https (ESTABLISHED)
sshd      5550       root    3u  IPv4 315897      0t0  TCP 192.168.254.159:2718->192.168.254.47:64500 (ESTABLISHED)
sshd      6322      morey    3u  IPv4 315897      0t0  TCP 192.168.254.159:2718->192.168.254.47:64500 (ESTABLISHED)
sshd      6322      morey   10u  IPv4 319584      0t0  TCP localhost:6010 (LISTEN)

これが役に立つかもしれないいくつかの追加情報です。

$ uname -a
Linux raspberrypi 4.9.35-v7+ #1014 SMP Fri Jun 30 14:47:43 BST 2017 armv7l GNU/Linux

$ vncserver --help
VNC(R) Server 6.1.1 (r28093) ARMv6 (May 19 2017 12:59:35)

iptablesこれはip6の変更または無効化に関連しているようですが、/etc/sysctl.conf解決策がわかりません。どんなアイデアでも大いに感謝します。

答え1

Jan 21 14:25:11 raspberrypi vncserver-x11[8898]: TcpListenerManager: not accepting connections: failed to listen on at least one address.
Jan 21 14:25:11 raspberrypi vncserver-x11[8898]: TcpListenerManager: not listening on [::1]::5900: bind: Cannot assign requested address (99)

::1IPv6と同じです127.0.0.1。そのため、IPv6 を無効にするとリスニングが::1できなくなります。

2つのオプションがあります。

  • まず、私の場合は、IPv6を再度有効にすることをお勧めします。現代社会では、IPv6を無効にする実質的な理由はなく(実際には数年以内にIPv6がなければインターネットにアクセスできない可能性があります)、この問題よりも多くの問題が発生する可能性が高いです。
  • もう一方のIPv6アドレス(最も可能性の高い他の候補アドレス)からのvncserver-x11受信を試みないように設定します。::1::

これはvncserver-x11-servicedRealVNCに固有のもので、受信アドレスの設定方法を説明するドキュメントが見つからないため、最後の部分を直接把握する必要があるかもしれません。

答え2

Jan 21 14:25:11 raspberrypi vncserver-x11[8898]: TcpListenerManager: not accepting connections: failed to listen on at least one address.
Jan 21 14:25:11 raspberrypi vncserver-x11[8898]: TcpListenerManager: not listening on [::1]::5900: bind: Cannot assign requested address (99)

受信アドレスが正しくありません。ポートとアドレスの間には、IPv6アドレスで省略形として使用される二重区切り文字では:なく、単一区切り文字を使用する必要があります。::

どこを設定しても、次のよう[::1]::5900に変更します。[::1]:5900

答え3

ipv6を無効にしてRealVncで同じ問題を確認し、次のように解決しました. -IpListenAddresses=0.0.0.0

パラメータから必ず-localhost削除してください

パラメータの詳細は次のとおりです。

IpListenAddresses - TCP/UDP 接続を受信するカンマ区切りの IP アドレスのリストであるか、使用可能なすべての IP アドレスを受信するために空です。 localhostパラメーターがTrueに設定されている場合、このパラメーターは無視されます。 (既定値=)

関連情報