@@ -483,11 +483,14 @@ <h2 id="DestinationWeight">DestinationWeight</h2>
483
483
< h2 id ="EgressRule "> EgressRule</ h2 >
484
484
< section >
485
485
< p > Egress rules describe the properties of a service outside Istio. When transparent proxying
486
- is used, egress rules signify a white listed set of domains that microserves in the mesh
486
+ is used, egress rules signify a white listed set of external services that microserves in the mesh
487
487
are allowed to access. A subset of routing rules and all destination policies can be applied
488
- on the service targeted by an egress rule. The destination of an egress rule is allowed to
489
- contain wildcards (e.g., *.foo.com). Currently, only HTTP-based services can be expressed
490
- through the egress rule. If TLS origination from the sidecar is desired, the protocol
488
+ on the service targeted by an egress rule. TCP services and HTTP-based services can be expressed
489
+ by an egress rule. The destination of an egress rule for HTTP-based services must be an IP or a domain name,
490
+ optionally with a wildcard prefix (e.g., *.foo.com). For TCP based services, the destination of an
491
+ egress rule must be an IP or a block of IPs in CIDR notation.</ p >
492
+
493
+ < p > If TLS origination from the sidecar is desired, the protocol
491
494
associated with the service port must be marked as HTTPS, and the service is expected to
492
495
be accessed over HTTP (e.g., http://gmail.com:443). The sidecar will automatically upgrade
493
496
the connection to TLS when initiating a connection with the external service.</ p >
@@ -507,6 +510,19 @@ <h2 id="EgressRule">EgressRule</h2>
507
510
protocol: https
508
511
</ code > </ pre >
509
512
513
+ < p > The following egress rule describes the set of services accessed by a block of IPs</ p >
514
+
515
+ < pre > < code > kind: EgressRule
516
+ metadata:
517
+ name: bar-egress-rule
518
+ spec:
519
+ destination:
520
+ service: 92.198.174.192/27
521
+ ports:
522
+ - port: 111
523
+ protocol: tcp
524
+ </ code > </ pre >
525
+
510
526
< table class ="message-fields ">
511
527
< thead >
512
528
< tr >
@@ -520,15 +536,21 @@ <h2 id="EgressRule">EgressRule</h2>
520
536
< td > < code > destination</ code > </ td >
521
537
< td > < code > < a href ="#IstioService "> IstioService</ a > </ code > </ td >
522
538
< td >
523
- < p > REQUIRED: Hostname or a wildcard domain name associated with the external service.
524
- ONLY the “service” field of destination will be taken into consideration. Name,
539
+ < p > REQUIRED: A domain name, optionally with a wildcard prefix, or an IP, or a block of IPs
540
+ associated with the external service.
541
+ ONLY the “service” field of “destination” will be taken into consideration. Name,
525
542
namespace, domain and labels are ignored. Routing rules and destination policies that
526
543
refer to these external services must have identical specification for the destination
527
- as the corresponding egress rule. Wildcard domain specifications must conform to format
544
+ as the corresponding egress rule.</ p >
545
+
546
+ < p > The “service” field of “destination” for HTTP-based services must be an IP or a domain name,
547
+ optionally with a wildcard prefix. Wildcard domain specifications must conform to format
528
548
allowed by Envoy’s Virtual Host specification, such as “< em > .foo.com” or “</ em > -bar.foo.com”.
529
549
The character ‘< em > ’ in a domain specification indicates a non-empty string. Hence, a wildcard
530
550
domain of form “</ em > -bar.foo.com” will match “baz-bar.foo.com” but not “-bar.foo.com”.</ p >
531
551
552
+ < p > The “service” field of “destination” for TCP services must be an IP or a block of IPs in CIDR notation.</ p >
553
+
532
554
</ td >
533
555
</ tr >
534
556
< tr id ="EgressRule.ports ">
0 commit comments