trafficserver-users mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Masakazu Kitajo <mas...@apache.org>
Subject Re: getting source/destination ip-address/port number in plugin
Date Mon, 21 Aug 2017 14:25:35 GMT
Hmm, maybe the response is served from cache?

AFAIK, there's no alternative API. It should return the address if
available, or it should be fixed. Which version are you using?

It would be helpful if you could share your records.config, remap.config,
and HTTP request / response headers.

Thanks,
Masakazu


On Mon, Aug 21, 2017 at 10:35 PM, Gaurav Bansal <zeebee48@gmail.com> wrote:

> Thanks Masakazu for the info. I checked again, and this time i am printing
> the output of TSHttpTxnServerAddrGet in the function triggered by
> TS_HTTP_SEND_RESPONSE_HDR_HOOK . But still i am seeing the same issue. All
> the bytes in sockaddr struct are 0. Is there any alternative to the usage
> of TSHttpTxnServerAddrGet api ? Please let me know.
> thanks,
> gaurav
>
> On Sat, Aug 19, 2017 at 1:48 PM, Masakazu Kitajo <maskit@apache.org>
> wrote:
>
>> Some of the addresses are not available on early stages. I guess you may
>> be using an inappropriate hook.
>>
>> [Aug 19 16:49:18.063] Server {0xb000a000} DIAG: (foo)
>> HOOK_READ_REQUEST_HEADERS_PRE_REMAP
>> [Aug 19 16:49:18.063] Server {0xb000a000} DIAG: (foo)
>> TSHttpTxnClientAddrGet: 127.0.0.1
>> [Aug 19 16:49:18.063] Server {0xb000a000} DIAG: (foo)
>> TSHttpTxnIncomingAddrGet: 127.0.0.1
>> [Aug 19 16:49:18.063] Server {0xb000a000} DIAG: (foo)
>> TSHttpTxnServerAddrGet: 0.0.0.0
>> [Aug 19 16:49:18.064] Server {0xb000a000} DIAG: (foo)
>> HOOK_READ_REQUEST_HEADERS_POST_REMAP
>> [Aug 19 16:49:18.064] Server {0xb000a000} DIAG: (foo)
>> TSHttpTxnClientAddrGet: 127.0.0.1
>> [Aug 19 16:49:18.064] Server {0xb000a000} DIAG: (foo)
>> TSHttpTxnIncomingAddrGet: 127.0.0.1
>> [Aug 19 16:49:18.064] Server {0xb000a000} DIAG: (foo)
>> TSHttpTxnServerAddrGet: 0.0.0.0
>> [Aug 19 16:49:18.103] Server {0xb000a000} DIAG: (foo) HOOK_OS_DNS
>> [Aug 19 16:49:18.103] Server {0xb000a000} DIAG: (foo)
>> TSHttpTxnClientAddrGet: 127.0.0.1
>> [Aug 19 16:49:18.103] Server {0xb000a000} DIAG: (foo)
>> TSHttpTxnIncomingAddrGet: 127.0.0.1
>> [Aug 19 16:49:18.103] Server {0xb000a000} DIAG: (foo)
>> TSHttpTxnServerAddrGet: 54.225.79.9
>> [Aug 19 16:49:18.106] Server {0xb000a000} DIAG: (foo)
>> HOOK_SEND_REQUEST_HEADERS
>> [Aug 19 16:49:18.106] Server {0xb000a000} DIAG: (foo)
>> TSHttpTxnClientAddrGet: 127.0.0.1
>> [Aug 19 16:49:18.106] Server {0xb000a000} DIAG: (foo)
>> TSHttpTxnIncomingAddrGet: 127.0.0.1
>> [Aug 19 16:49:18.106] Server {0xb000a000} DIAG: (foo)
>> TSHttpTxnOutGoingAddrGet: 192.168.1.22
>> [Aug 19 16:49:18.106] Server {0xb000a000} DIAG: (foo)
>> TSHttpTxnServerAddrGet: 54.225.79.9
>> [Aug 19 16:49:18.685] Server {0xb000a000} DIAG: (foo)
>> HOOK_SEND_RESPONSE_HEADERS
>> [Aug 19 16:49:18.685] Server {0xb000a000} DIAG: (foo)
>> TSHttpTxnClientAddrGet: 127.0.0.1
>> [Aug 19 16:49:18.685] Server {0xb000a000} DIAG: (foo)
>> TSHttpTxnIncomingAddrGet: 127.0.0.1
>> [Aug 19 16:49:18.685] Server {0xb000a000} DIAG: (foo)
>> TSHttpTxnOutGoingAddrGet: 192.168.1.22
>> [Aug 19 16:49:18.685] Server {0xb000a000} DIAG: (foo)
>> TSHttpTxnServerAddrGet: 54.225.79.9
>>
>> Thanks,
>> Masakazu
>>
>>
>> On Fri, Aug 18, 2017 at 5:36 PM, Gaurav Bansal <zeebee48@gmail.com>
>> wrote:
>>
>>> Thanks Masakazu for the info. I tried the api's you told in the links
>>> above. Out of these :
>>> i) TSHttpSsnClientAddrGet : works fine as expected giving client port/ip.
>>> ii) TSHttpTxnServerAddrGet : always provides 0 for sin_port & sin_addr
>>> members of sockaddr_in struct (infact all the bytes in sockaddr structure
>>> returned by this api are 0). Are there any known issues with this api ? Is
>>> there any other way to get the server ip/port in the plugin ?
>>>
>>> thanks,
>>> gaurav
>>>
>>>
>>> On Wed, Aug 16, 2017 at 5:58 PM, Masakazu Kitajo <maskit@apache.org>
>>> wrote:
>>>
>>>> Hi Gaurav,
>>>>
>>>> Here you are. These are C++ API but you can use TSHttpTxn* functions
>>>> directly if you use C API.
>>>> https://github.com/apache/trafficserver/blob/7.1.0/lib/cppap
>>>> i/Transaction.cc#L284-L306
>>>>
>>>> You can find some of them on our documentation (not all of them,
>>>> unfortunately).
>>>> https://docs.trafficserver.apache.org/en/latest/developer-gu
>>>> ide/api/functions/TSHttpTxnServerAddrGet.en.html
>>>>
>>>> Thanks,
>>>> Masakazu
>>>>
>>>>
>>>> On Wed, Aug 16, 2017 at 7:55 PM, Gaurav Bansal <zeebee48@gmail.com>
>>>> wrote:
>>>>
>>>>> hi all,
>>>>> I am writing a plugin and need the value of client/server
>>>>> ip-address/port-number. Is there any existing api, using which i can
get
>>>>> these OR any structure from which i can get these values ? Definitely
these
>>>>> would have been stored in some structure while parsing the ip headers,
just
>>>>> want to know how to access them from the plugin.
>>>>> thanks,
>>>>> gaurav
>>>>>
>>>>
>>>>
>>>
>>
>

Mime
View raw message