Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Adds an option to disable IPv6. #3603

Merged
merged 1 commit into from Dec 5, 2017
Merged

Conversation

cmatteri
Copy link

@cmatteri cmatteri commented Dec 4, 2017

What does this PR do?

By default, the Tornado HTTP Client (either the simple client or the curl client) in the forwarder will use IPv6 if it is available. Sometimes users wish to force the agent to use IPv4. This PR adds a config option that allows users to force the forwarder's HTTP client to use IPv4.

Motivation

This feature has been requested by several customers.

Testing Guidelines

Test strategy:
On a network that support IPv6:

  • Set the agent's log level to debug
  • Verify that the forwarder is using IPv6 addresses
  • Set allow_ipv6: no in the agent config
  • Verify that the forwarder is using IPv4 addresses
  • Set use_curl_http_client: yes in the agent config
  • Repeat the previous tests

The curl client persists connections after each request, so I could see which IP version it was using with lsof -i -a -p $(pgrep -f ddagent.py) (it also logs the IPs it's using). The simple client does not persist connections, but I could check the IPs it was connecting to with strace -p $(pgrep -f ddagent.py) -f -e trace=network -s 10000.

The agent behaved as expected in these tests.

By default, the Tornado HTTP Client (either the simple client or the curl client) in the forwarder will use IPv6 if it is available. Sometimes users wish to force the agent to use IPv4.
@hush-hush hush-hush added this to the 5.21.0 milestone Dec 5, 2017
@hush-hush hush-hush merged commit dff8bb5 into master Dec 5, 2017
@hush-hush hush-hush deleted the chrism/disable-ipv6-option branch December 5, 2017 20:10
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

None yet

4 participants