This feature is useful in scenarios where eNB is behind a NAT and EPC on public cloud
Since eNB's GTP-U can only bind to IP address visible in it's host (usually a private IP beind a NAT), it advertises the same to UE in S1AP message
resulting in traffic from EPC to eNB (DL traffic) not able to reach eNB. This commit solves this issue by providing a means to advertise a different IP address than the one GTP-U UDP socket is bound to.
This IP is usually advertised in InitialContextSetupResponse and E-RABSetupResponse.
In order to make use of this feature, use the following parameter in enb.conf
Example:
gtp_advertise_addr = 213.61.141.82
master
herlesupreeth4 years agocommitted byAndre Puschmann
("enb.mme_addr",bpo::value<string>(&args->stack.s1ap.mme_addr)->default_value("127.0.0.1"),"IP address of MME for S1 connection")
("enb.gtp_bind_addr",bpo::value<string>(&args->stack.s1ap.gtp_bind_addr)->default_value("192.168.3.1"),"Local IP address to bind for GTP connection")
("enb.gtp_advertise_addr",bpo::value<string>(&args->stack.s1ap.gtp_advertise_addr)->default_value(""),"IP address of eNB to advertise for DL GTP-U Traffic")
("enb.s1c_bind_addr",bpo::value<string>(&args->stack.s1ap.s1c_bind_addr)->default_value("192.168.3.1"),"Local IP address to bind for S1AP connection")
("enb.n_prb",bpo::value<uint32_t>(&args->enb.n_prb)->default_value(25),"Number of PRB")
("enb.nof_ports",bpo::value<uint32_t>(&args->enb.nof_ports)->default_value(1),"Number of ports")