Skip to content

feat: add new strategy to route requests through NATs

Félix Olart requested to merge feature/nat-traversal-strategy-rfc-5626 into master

Overview

This MR aims at implementing a new strategy to route requests when UACs route requests through NATs. The implemented feature is described in the following RFC: RFC5626, sections 5.1 to 5.3.

This MR maintains compatibility with the current method (called "contact-correction") and adds a new method called "flow-token".

WARNING: at the moment, this new method is not intended to work when updating a session.

FLEXISIP-55

TODO

  • Fix tests so they do not use port 5060
  • Generate a random hash key and store it under /var/lib/flexisip
  • Write unit tests
    • Flow
    • FlowUtils
    • FlowFactory
    • SocketAddress
    • NatHelper configuration parameters
    • ContactCorrection strategy
    • FlowToken stategy
  • Write integration tests (feature-level tests)
  • Update module NatHelper description in configuration file
  • Write doc strings
  • Problem when pausing a call between pc and mobile --> udp
Edited by Félix Olart

Merge request reports