From 84d04adfff69c7f2e1af0d713d3c7834408cbe68 Mon Sep 17 00:00:00 2001 From: Haibo Chen Date: Sat, 7 Aug 2021 23:37:18 +0800 Subject: [PATCH] get original ip instead of proxy ip, for rtc api (#2514) --- trunk/src/app/srs_app_rtc_api.cpp | 12 +++++++++++- 1 file changed, 11 insertions(+), 1 deletion(-) diff --git a/trunk/src/app/srs_app_rtc_api.cpp b/trunk/src/app/srs_app_rtc_api.cpp index 70291f4de..16db0416e 100644 --- a/trunk/src/app/srs_app_rtc_api.cpp +++ b/trunk/src/app/srs_app_rtc_api.cpp @@ -14,7 +14,7 @@ #include #include #include - +#include #include #include using namespace std; @@ -96,6 +96,11 @@ srs_error_t SrsGoApiRtcPlay::do_serve_http(ISrsHttpResponseWriter* w, ISrsHttpMe } if (clientip.empty()) { clientip = dynamic_cast(r)->connection()->remote_ip(); + // Overwrite by ip from proxy. + string oip = srs_get_original_ip(r); + if (!oip.empty()) { + clientip = oip; + } } string api; @@ -314,6 +319,11 @@ srs_error_t SrsGoApiRtcPublish::do_serve_http(ISrsHttpResponseWriter* w, ISrsHtt } if (clientip.empty()){ clientip = dynamic_cast(r)->connection()->remote_ip(); + // Overwrite by ip from proxy. + string oip = srs_get_original_ip(r); + if (!oip.empty()) { + clientip = oip; + } } string api;