Skip to content

Unblock ip6 tables to allow ipv6 traffic#11916

Merged
rshriram merged 7 commits intoistio:release-1.1from
sbezverk:ip6tables_whitebox_mode
Mar 6, 2019
Merged

Unblock ip6 tables to allow ipv6 traffic#11916
rshriram merged 7 commits intoistio:release-1.1from
sbezverk:ip6tables_whitebox_mode

Conversation

@sbezverk
Copy link
Copy Markdown
Contributor

Signed-off-by: Serguei Bezverkhi [email protected]

Currently ip6tables block ipv6 traffic which makes impossible to test/develop anything with ipv6. This PR temporarily allows ipv6 traffic to unblock development and testing of ipv6 based services.

@istio-testing
Copy link
Copy Markdown
Collaborator

[APPROVALNOTIFIER] This PR is NOT APPROVED

This pull-request has been approved by: sbezverk
To fully approve this pull request, please assign additional approvers.
We suggest the following additional approver: costinm

If they are not already assigned, you can assign the PR to them by writing /assign @costinm in a comment when ready.

The full list of commands accepted by this bot can be found here.

The pull request process is described here

Details Needs approval from an approver in each of these files:

Approvers can indicate their approval by writing /approve in a comment
Approvers can cancel approval by writing /approve cancel in a comment

@sbezverk
Copy link
Copy Markdown
Contributor Author

with this PR istio-init shows:

Variables:
----------
PROXY_PORT=15001
+ iptables -t nat -N ISTIO_REDIRECT
+ iptables -t nat -A ISTIO_REDIRECT -p tcp -j REDIRECT --to-port 15001
+ iptables -t nat -N ISTIO_IN_REDIRECT
INBOUND_CAPTURE_PORT=15001
PROXY_UID=1337
INBOUND_INTERCEPTION_MODE=REDIRECT
INBOUND_TPROXY_MARK=1337
INBOUND_TPROXY_ROUTE_TABLE=133
INBOUND_PORTS_INCLUDE=50705
INBOUND_PORTS_EXCLUDE=15020
OUTBOUND_IP_RANGES_INCLUDE=*
OUTBOUND_IP_RANGES_EXCLUDE=
KUBEVIRT_INTERFACES=
ENABLE_INBOUND_IPV6=2001:470:b16e:201::63 < ------ Correctly detects that POD has ipv6 enabled

+ '[' -n '' ']'
+ '[' '*' == '*' ']'
+ iptables -t nat -A ISTIO_OUTPUT -j ISTIO_REDIRECT
+ set +o nounset
+ '[' -n 2001:470:b16e:201::63 ']'       < ------- IPv6 address assigned to the pod
+ ip6tables -A INPUT -j ACCEPT
+ ip6tables -A OUTPUT -j ACCEPT
+ ip6tables -A FORWARD -j ACCEPT

@sbezverk
Copy link
Copy Markdown
Contributor Author

CI failure seems unrelated, appreciate if somebody could restart this CI test.

@sbezverk sbezverk mentioned this pull request Feb 22, 2019
Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

To be safe, let's remove this for now - I think it is safe if the user sets that explicitly, but attempting to guess is hard to test.

Copy link
Copy Markdown
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

If we remove it here then I need a way to flag it somehow to the code.

Copy link
Copy Markdown
Contributor

@costinm costinm left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

looks good if you remove the guessing. Seems pretty safe and useful - but maybe 1.1.1 ?

@costinm
Copy link
Copy Markdown
Contributor

costinm commented Mar 2, 2019

We should mention in the release notes that this is not fully supported/tested - we will need some tests before it moves even to alpha.

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

“else" is missing here

     else
      # User has specified a non-empty list of ports to be redirected to Envoy.
      for port in ${INBOUND_PORTS_INCLUDE}; do
        ip6tables -t nat -A ISTIO_INBOUND -p tcp --dport "${port}" -j ISTIO_IN_REDIRECT
      done
    fi
  fi

Copy link
Copy Markdown
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Not sure how it happened but my code has that else.. so it should be ok.

sbezverk added 7 commits March 4, 2019 08:20
Signed-off-by: Serguei Bezverkhi <[email protected]>
Signed-off-by: Serguei Bezverkhi <[email protected]>
Signed-off-by: Serguei Bezverkhi <[email protected]>
Signed-off-by: Serguei Bezverkhi <[email protected]>
Signed-off-by: Serguei Bezverkhi <[email protected]>
@istio-testing
Copy link
Copy Markdown
Collaborator

@sbezverk: The following tests failed, say /retest to rerun them all:

Test name Commit Details Rerun command
prow/istio-integ-k8s-tests.sh 49f19a9 link /test istio-integ-k8s-tests
prow/istio-pilot-multicluster-e2e.sh 49f19a9 link /test istio-pilot-multicluster-e2e
Details

Instructions for interacting with me using PR comments are available here. If you have questions or suggestions related to my behavior, please file an issue against the kubernetes/test-infra repository. I understand the commands that are listed here.

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.

6 participants