Comments (4)
Hi @anildigital
Currently stun-nat-behavior
only does UDP.
I haven't done an TCP STUN myself, but if you are interested it would be a great contribution!
from stun.
Its great that tcp is now supported! According to Readme.md
RFC 7064 — STUN URI
(TLS-over-)TCP client support
are supported too but i dont see any supprt for TLS/SSL or the "STUNS" URI in the source code.
Is it possible to establish a STUN over TLS / STUNS connection with "stun.Dial"?
from stun.
I see that all the examples currently resolve the server address manually and dial to it via UDP (IPv4).
We should add a new function stun.DialURL(u *URL)
which handles all the magic and use it for the examples later on.
The only thing about which I am concerned is the duplication of code we already have an ice.URL
struct in pion/ice:
https://github.com/pion/ice/blob/master/url.go
I propose to move ice.URL
to stun.URL
and add a type alias to the ice
module for API compatibility.
Furthermore, stun.URL
currently implements only RFC 7064 (STUN URI) not RFC 7065 (TURN URL).
I am not so sure if we really want to split up the implementation of the URL struct into the stun
and turn
modules.
@Sean-Der What is your take on this?
from stun.
We have now merged #134 :) So work on this issue can proceed.
My first naive to use a stun.Client
for stun-nat-behaviour
failed as we basically need to establish two connections to the STUN server to identifier NAT behaviour, while the stun.Client
represents just a single connection.
We can fix this by creating a second stun.Client
to OTHER-ADDRESS
.
from stun.
Related Issues (20)
- goroutine 1228
- README.md outdated. go get is now used differently HOT 11
- Update paths to use `pion` instead of `gortc` HOT 1
- Port old fuzzing code to Go's new fuzzing tools
- Add pion/.goassets
- stun.voip.blackberry.com no longer supports NAT discovery?
- how test turn server HOT 1
- atomic.LoadInt64 panics on ARM
- How can i set client source port? HOT 3
- m.Raw allocate is to small HOT 2
- Ignore comprehension bits in the STUN attribute type field HOT 1
- stun-nat-behaviour: command not found HOT 2
- Implement RFC 8489 HOT 1
- stun-client.go fails on double-stack host
- Action Required: Fix Renovate Configuration
- Close hangs app when WithNoConnClose HOT 4
- TestClientGC hangs HOT 1
- Dependency Dashboard
- Does it support ipv6? HOT 2
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from stun.