docs(changelog): clarify webrtc in v0.24
This sets the expectations (not production ready) and gives users hint how to enable it by adding `/udp/4001/webrtc-direct` listener.
Marcin Rataj committed
Nov 9, 2023 at 01:42 UTC
7834a26d034dad9fda0e08d4bcd31052bbb969f5
2 files changed
+33
-15
docs/changelogs/v0.24.md
+14
-8
@@ -71,14 +71,20 @@ cached more efficiently and load faster in browser contexts.
71
72
#### Experimental Transport: WebRTC Direct
73
74
-[WebRTC Direct](https://github.com/libp2p/go-libp2p/pull/2337) has now been introduced
75
-in [`go-libp2p`](https://github.com/libp2p/go-libp2p/releases/tag/v0.32.0) v0.32.0. This
76
-transport protocol allows browser nodes to connect to other nodes without special configuration,
77
-such as TLS certificates. This can be useful for browsers that do not yet support
78
-WebTransport, for example.
79
-
80
-Note that, at the moment, WebRTC Direct cannot be used to connect to a browser node to a
81
-node that is behind a NAT or firewall. This is being worked on [`go-libp2p#2009`](https://github.com/libp2p/go-libp2p/issues/2009).
74
+This Kubo release includes the initial work towards WebRTC Direct
75
+introduced in [`go-libp2p`](https://github.com/libp2p/go-libp2p/releases/tag/v0.32.0) v0.32:
76
+
77
+> [WebRTC Direct](https://github.com/libp2p/specs/blob/master/webrtc/webrtc-direct.md)
78
+> allows browser nodes to connect to go-libp2p nodes directly,
79
+> without any configuration (e.g. TLS certificates) needed on the go-libp2p
80
+> side. This is useful for browser nodes that aren’t able to use
81
+> [WebTransport](https://blog.libp2p.io/2022-12-19-libp2p-webtransport/).
82
+
83
+The `/webrtc-direct` transport is disabled by default in Kubo 0.24,
84
+and not ready for production use yet, but we plan to enable it in a future release.
85
+
86
+See [`Swarm.Transports.Network.WebRTCDirect`](https://github.com/ipfs/kubo/blob/master/docs/config.md#swarmtransportsnetworkwebrtcdirect)
87
+to learn how to enable it manually, and what current limitations are.
88
89
### 📝 Changelog
90
docs/config.md
+19
-7
@@ -2076,13 +2076,25 @@ Type: `flag`
2076
#### `Swarm.Transports.Network.WebRTCDirect`
2077
2078
**Experimental:** the support for WebRTC Direct is currently experimental.
2079
-
2080
-A new feature of [`go-libp2p`](https://github.com/libp2p/go-libp2p/releases/tag/v0.32.0)
2081
-is the [WebRTC Direct](https://github.com/libp2p/go-libp2p/pull/2337) transport.
2082
-
2083
-WebRTC Direct is a transport protocol that provides another way for browsers to connect to the rest of the libp2p network. WebRTC Direct allows for browser nodes to connect to other nodes without special configuration, such as TLS certificates. This can be useful for browser nodes that do not yet support WebTransport, for example.
2084
-
2085
-Note that, at the moment, WebRTC Direct cannot be used to connect to a browser node to a node that is behind a NAT or firewall. This is being worked on [`go-libp2p#2009`](https://github.com/libp2p/go-libp2p/issues/2009).
2079
+This feature was introduced in [`go-libp2p@v0.32.0`](https://github.com/libp2p/go-libp2p/releases/tag/v0.32.0).
2080
+
2081
+[WebRTC Direct](https://github.com/libp2p/specs/blob/master/webrtc/webrtc-direct.md)
2082
+is a transport protocol that provides another way for browsers to
2083
+connect to the rest of the libp2p network. WebRTC Direct allows for browser
2084
+nodes to connect to other nodes without special configuration, such as TLS
2085
+certificates. This can be useful for browser nodes that do not yet support
2086
+[WebTransport](https://blog.libp2p.io/2022-12-19-libp2p-webtransport/).
2087
+
2088
+Enabling this transport allows Kubo node to act on `/udp/4001/webrtc-direct`
2089
+listeners defined in `Addresses.Swarm`, `Addresses.Announce` or
2090
+`Addresses.AppendAnnounce`.
2091
+
2092
+**NOTE:** at the moment, WebRTC Direct cannot be used to connect to a browser
2093
+node to a node that is behind a NAT or firewall.
2094
+This requires using normal
2095
+[WebRTC](https://github.com/libp2p/specs/blob/master/webrtc/webrtc.md),
2096
+which is currently being worked on in
2097
+[go-libp2p#2009](https://github.com/libp2p/go-libp2p/issues/2009).
2098
2099
Default: Disabled
2100