Created
October 1, 2020 09:02
-
-
Save uozbek/254e8bce392e404cf78b0fb31f5bd494 to your computer and use it in GitHub Desktop.
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| ;; Local network interfaces used for ICE gathering. | |
| ;; | |
| ;; If you know which network interfaces should be used to perform ICE (for | |
| ;; WebRTC connectivity), you can define them here. Doing so has several | |
| ;; advantages: | |
| ;; | |
| ;; * The WebRTC ICE gathering process will be much quicker. Normally, it needs | |
| ;; to gather local candidates for all of the network interfaces, but this step | |
| ;; can be made faster if you limit it to only the interface that you know will | |
| ;; work. | |
| ;; | |
| ;; * It will ensure that the media server always decides to use the correct | |
| ;; network interface. With WebRTC ICE gathering it's possible that, under some | |
| ;; circumstances (in systems with virtual network interfaces such as | |
| ;; "docker0") the ICE process ends up choosing the wrong local IP. | |
| ;; | |
| ;; <networkInterfaces> is a comma-separated list of network interface names. | |
| ;; | |
| ;; Examples: | |
| ;; networkInterfaces=eth0 | |
| ;; networkInterfaces=eth0,enp0s25 | |
| ;; | |
| ;networkInterfaces=eth0 | |
| ;; List of IPs to be ignored during the gathering phase when networkInterfaces | |
| ;; is enabled. | |
| ;; | |
| ;; If you set up the networkInterfaces option and the desired interfaces have | |
| ;; IPs that you don't wish to be used by libnice's NiceAgent, you | |
| ;; you can define them here. | |
| ;; | |
| ;; The general use case is filtering out IP addresses which are in the private | |
| ;; address ranges in environments where they aren't needed. This allows a fine | |
| ;; tuning to the number of server-side candidates generated by Kurento, reducing | |
| ;; signalling overhead and potentially speeding up connectivity checks. | |
| ;; | |
| ;; <ipIgnoreList> is a comma-separated list of IP (IPv4 and IPV6) addresses | |
| ;; | |
| ;; Examples: | |
| ;; ipIgnoreList=10.10.0.254 | |
| ;; ipIgnoreList=fd12:3456:789a:1::1 | |
| ;; STUN server IP address. | |
| ;; | |
| ;; The ICE process uses STUN to punch holes through NAT firewalls. | |
| ;; | |
| ;; <stunServerAddress> MUST be an IP address; domain names are NOT supported. | |
| ;; | |
| ;; You need to use a well-working STUN server. Use this to check if it works: | |
| ;; https://webrtc.github.io/samples/src/content/peerconnection/trickle-ice/ | |
| ;; | |
| ;; From that check, you should get at least one Server-Reflexive Candidate | |
| ;; (type "srflx"). | |
| ;; | |
| stunServerAddress=uzep_stun_ip | |
| stunServerPort=uzep_stun_port | |
| ;; TURN server URL. | |
| ;; | |
| ;; When STUN is not enough to open connections through some NAT firewalls, | |
| ;; using TURN is the remaining alternative. | |
| ;; | |
| ;; Note that TURN is a superset of STUN, so you don't need to configure STUN | |
| ;; if you are using TURN. | |
| ;; | |
| ;; The provided URL should follow one of these formats: | |
| ;; | |
| ;; * user:password@ipaddress:port | |
| ;; * user:password@ipaddress:port?transport=[udp|tcp|tls] | |
| ;; | |
| ;; <ipaddress> MUST be an IP address; domain names are NOT supported. | |
| ;; <transport> is OPTIONAL. Possible values: udp, tcp, tls. Default: udp. | |
| ;; | |
| ;; You need to use a well-working TURN server. Use this to check if it works: | |
| ;; https://webrtc.github.io/samples/src/content/peerconnection/trickle-ice/ | |
| ;; | |
| ;; From that check, you should get at least one Server-Reflexive Candidate | |
| ;; (type "srflx") AND one Relay Candidate (type "relay"). | |
| ;; | |
| ;turnURL=user:[email protected]:3478?transport=udp | |
| ;; Certificate used for DTLS authentication. | |
| ;; | |
| ;; If you want KMS to use a specific certificate for DTLS, then provide it here. | |
| ;; You can provide both RSA or ECDSA files; the choice between them is done when | |
| ;; calling the WebRtcEndpoint constructor. | |
| ;; | |
| ;; If this setting isn't specified, a different set of self-signed certificates | |
| ;; is generated automatically for each WebRtcEndpoint instance. | |
| ;; | |
| ;; This setting can be helpful, for example, for situations where you have to | |
| ;; manage multiple media servers and want to make sure that all of them use the | |
| ;; same certificate. Some browsers, such as Firefox, require this in order to | |
| ;; allow multiple WebRTC connections from the same tab to different KMS. | |
| ;; | |
| ;; Absolute path to the concatenated certificate (chain) file(s) + private key, | |
| ;; in PEM format. | |
| ;pemCertificateRSA=/path/to/cert+key.pem | |
| ;pemCertificateECDSA=/path/to/cert+key.pem | |
| ;; External IPv4 and IPv6 addresses of the media server. | |
| ;; | |
| ;; Forces all local IPv4 and/or IPv6 ICE candidates to have the given address. | |
| ;; This is really nothing more than a hack, but it's very effective to force a | |
| ;; public IP address when one is known in advance for the media server. In doing | |
| ;; so, KMS will not need a STUN or TURN server, but remote peers will still be | |
| ;; able to contact it. | |
| ;; | |
| ;; You can try using these settings if KMS is deployed on a publicly accessible | |
| ;; server, without NAT, and with a static public IP address. But if it doesn't | |
| ;; work for you, just go back to configuring a STUN or TURN server for ICE. | |
| ;; | |
| ;; Only set this parameter if you know what you're doing, and you understand | |
| ;; 100% WHY you need it. For the majority of cases, you should just prefer to | |
| ;; configure a STUN or TURN server. | |
| ;; | |
| ;; <externalIPv4> is a single IPv4 address. | |
| ;; <externalIPv6> is a single IPv6 address. | |
| ;; | |
| ;externalIPv4=198.51.100.1 | |
| ;externalIPv6=2001:0db8:85a3:0000:0000:8a2e:0370:7334 | |
| ;; External IP address of the media server. | |
| ;; | |
| ;; DEPRECATED: Use "externalIPv4" and/or "externalIPv6" instead. | |
| ;; | |
| ;; Forces all local IPv4 and IPv6 ICE candidates to have the given address. This | |
| ;; is really nothing more than a hack, but it's very effective to force a public | |
| ;; IP address when one is known in advance for the media server. In doing so, | |
| ;; KMS will not need a STUN or TURN server, but remote peers will still be able | |
| ;; to contact it. | |
| ;; | |
| ;; You can try using this setting if KMS is deployed on a publicly accessible | |
| ;; server, without NAT, and with a static public IP address. But if it doesn't | |
| ;; work for you, just go back to configuring a STUN or TURN server for ICE. | |
| ;; | |
| ;; Only set this parameter if you know what you're doing, and you understand | |
| ;; 100% WHY you need it. For the majority of cases, you should just prefer to | |
| ;; configure a STUN or TURN server. | |
| ;; | |
| ;; <externalAddress> is a single IPv4 or IPv6 address. | |
| ;; | |
| ;externalAddress=198.51.100.1 | |
| ;externalAddress=2001:0db8:85a3:0000:0000:8a2e:0370:7334 | |
| ;; Whether to enable TCP candidate gathering via NiceAgent's ice-tcp property. | |
| ;; The motivation behind this is to potentially speed up gathering | |
| ;; by preventing TCP candidate gathering in scenarios where they aren't needed. | |
| ;; Property reference: https://libnice.freedesktop.org/libnice/NiceAgent.html#NiceAgent--ice-tcp | |
| ;; | |
| ;; <niceAgentIceTcp> MUST be either 0 (FALSE) or 1 (TRUE) | |
| ;; Default is 1 (TRUE) | |
| ;; | |
| ;niceAgentIceTcp=1 |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment