Project

General

Profile

Actions

Feature #2394

open

WebSocketChannel: configurable list of endpoints to bind to

Added by Alex Afanasyev over 9 years ago. Updated about 5 years ago.

Status:
New
Priority:
Normal
Assignee:
-
Category:
Faces
Target version:
-
Start date:
Due date:
% Done:

0%

Estimated time:
4.50 h

Description

It would be good to allow users to restrict WebSocket connections (i.e., bind WebSocketChannel to localhost address). Right now we don't seem to have that option in the configuration file/protocol factory.


Related issues 1 (1 open0 closed)

Related to NFD - Task #4972: Migrate WebSocket face to Boost.BeastNew

Actions
Actions #1

Updated by Junxiao Shi over 9 years ago

  • Tracker changed from Task to Feature
  • Subject changed from WebSocket channel needs to have option to be bound on localhost only to WebSocket channel: bind on localhost only

I agree with the necessity of this option: operator may want to expose NFD WebSocketChannel to local IP only, and use a front-end proxy (such as nginx) to expose it for client to use.

I don't feel the importance of this feature.
This can be scheduled after #2107, or even be pushed off to v0.4 if necessary.


An on/off switch is too restrictive.

I suggest a configuration option "bind IP address" in the form of an unordered list of IP addresses:

  • 127.0.0.1, [::1] gives local-only
  • 0.0.0.0, [::] gives all IPs
  • other values can be used for further customization

UDP and TCP also need similar options.

Actions #2

Updated by Alex Afanasyev over 9 years ago

Yes. This feature can be postponed to the later.

Actions #3

Updated by Davide Pesavento about 9 years ago

This is somewhat similar to #1712 but at the channel level, i.e. for unicast faces.

Actions #4

Updated by Davide Pesavento about 9 years ago

  • Target version changed from v0.3 to v0.4
Actions #5

Updated by Davide Pesavento over 8 years ago

  • Target version deleted (v0.4)
Actions #6

Updated by Junxiao Shi over 7 years ago

I want to revise my note-1 idea as a single endpoints option that covers both IP and port number.
This option replaces enable_v4 enable_v6 port options.

Its value is an unordered list of FaceUris, such as udp4://0.0.0.0:6363 tcp6://[::]:6363 ws://127.0.0.1:9696.

Actions #7

Updated by Junxiao Shi almost 7 years ago

  • Assignee set to Teng Liang
  • Estimated time set to 4.50 h

Teng says he wants a Feature to work on, and this one seems to match his expertise.

Actions #8

Updated by Davide Pesavento about 6 years ago

This feature can be applied to all channel types, not just the WebSocket one.

Actions #9

Updated by Teng Liang about 6 years ago

  • Assignee deleted (Teng Liang)
Actions #10

Updated by Davide Pesavento about 5 years ago

  • Subject changed from WebSocket channel: bind on localhost only to WebSocketChannel: configurable list of endpoints to bind to
  • Description updated (diff)
  • Category changed from Management to Faces
Actions #11

Updated by Junxiao Shi 3 months ago

  • Related to Task #4972: Migrate WebSocket face to Boost.Beast added
Actions

Also available in: Atom PDF