amazonka-ec2-1.6.1: Amazon Elastic Compute Cloud SDK.

Copyright(c) 2013-2018 Brendan Hay
LicenseMozilla Public License, v. 2.0.
MaintainerBrendan Hay <brendan.g.hay+amazonka@gmail.com>
Stabilityauto-generated
Portabilitynon-portable (GHC extensions)
Safe HaskellNone
LanguageHaskell2010

Network.AWS.EC2.CreateRoute

Contents

Description

Creates a route in a route table within a VPC.

You must specify one of the following targets: Internet gateway or virtual private gateway, NAT instance, NAT gateway, VPC peering connection, network interface, or egress-only Internet gateway.

When determining how to route traffic, we use the route with the most specific match. For example, traffic is destined for the IPv4 address 192.0.2.3 , and the route table includes the following two IPv4 routes:

  • 192.0.2.0/24 (goes to some target A)
  • 192.0.2.0/28 (goes to some target B)

Both routes apply to the traffic destined for 192.0.2.3 . However, the second route in the list covers a smaller number of IP addresses and is therefore more specific, so we use that route to determine where to target the traffic.

For more information about route tables, see Route Tables in the Amazon Virtual Private Cloud User Guide .

Synopsis

Creating a Request

createRoute Source #

Creates a value of CreateRoute with the minimum fields required to make a request.

Use one of the following lenses to modify other fields as desired:

  • crVPCPeeringConnectionId - The ID of a VPC peering connection.
  • crInstanceId - The ID of a NAT instance in your VPC. The operation fails if you specify an instance ID unless exactly one network interface is attached.
  • crEgressOnlyInternetGatewayId - [IPv6 traffic only] The ID of an egress-only Internet gateway.
  • crDestinationIPv6CidrBlock - The IPv6 CIDR block used for the destination match. Routing decisions are based on the most specific match.
  • crNatGatewayId - [IPv4 traffic only] The ID of a NAT gateway.
  • crNetworkInterfaceId - The ID of a network interface.
  • crGatewayId - The ID of an Internet gateway or virtual private gateway attached to your VPC.
  • crDryRun - Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation . Otherwise, it is UnauthorizedOperation .
  • crDestinationCidrBlock - The IPv4 CIDR address block used for the destination match. Routing decisions are based on the most specific match.
  • crRouteTableId - The ID of the route table for the route.

data CreateRoute Source #

Contains the parameters for CreateRoute.

See: createRoute smart constructor.

Instances
Eq CreateRoute Source # 
Instance details

Defined in Network.AWS.EC2.CreateRoute

Data CreateRoute Source # 
Instance details

Defined in Network.AWS.EC2.CreateRoute

Methods

gfoldl :: (forall d b. Data d => c (d -> b) -> d -> c b) -> (forall g. g -> c g) -> CreateRoute -> c CreateRoute #

gunfold :: (forall b r. Data b => c (b -> r) -> c r) -> (forall r. r -> c r) -> Constr -> c CreateRoute #

toConstr :: CreateRoute -> Constr #

dataTypeOf :: CreateRoute -> DataType #

dataCast1 :: Typeable t => (forall d. Data d => c (t d)) -> Maybe (c CreateRoute) #

dataCast2 :: Typeable t => (forall d e. (Data d, Data e) => c (t d e)) -> Maybe (c CreateRoute) #

gmapT :: (forall b. Data b => b -> b) -> CreateRoute -> CreateRoute #

gmapQl :: (r -> r' -> r) -> r -> (forall d. Data d => d -> r') -> CreateRoute -> r #

gmapQr :: (r' -> r -> r) -> r -> (forall d. Data d => d -> r') -> CreateRoute -> r #

gmapQ :: (forall d. Data d => d -> u) -> CreateRoute -> [u] #

gmapQi :: Int -> (forall d. Data d => d -> u) -> CreateRoute -> u #

gmapM :: Monad m => (forall d. Data d => d -> m d) -> CreateRoute -> m CreateRoute #

gmapMp :: MonadPlus m => (forall d. Data d => d -> m d) -> CreateRoute -> m CreateRoute #

gmapMo :: MonadPlus m => (forall d. Data d => d -> m d) -> CreateRoute -> m CreateRoute #

Read CreateRoute Source # 
Instance details

Defined in Network.AWS.EC2.CreateRoute

Show CreateRoute Source # 
Instance details

Defined in Network.AWS.EC2.CreateRoute

Generic CreateRoute Source # 
Instance details

Defined in Network.AWS.EC2.CreateRoute

Associated Types

type Rep CreateRoute :: Type -> Type #

Hashable CreateRoute Source # 
Instance details

Defined in Network.AWS.EC2.CreateRoute

AWSRequest CreateRoute Source # 
Instance details

Defined in Network.AWS.EC2.CreateRoute

Associated Types

type Rs CreateRoute :: Type #

ToHeaders CreateRoute Source # 
Instance details

Defined in Network.AWS.EC2.CreateRoute

Methods

toHeaders :: CreateRoute -> [Header] #

ToPath CreateRoute Source # 
Instance details

Defined in Network.AWS.EC2.CreateRoute

ToQuery CreateRoute Source # 
Instance details

Defined in Network.AWS.EC2.CreateRoute

NFData CreateRoute Source # 
Instance details

Defined in Network.AWS.EC2.CreateRoute

Methods

rnf :: CreateRoute -> () #

type Rep CreateRoute Source # 
Instance details

Defined in Network.AWS.EC2.CreateRoute

type Rep CreateRoute = D1 (MetaData "CreateRoute" "Network.AWS.EC2.CreateRoute" "amazonka-ec2-1.6.1-GgG1M0FWcBrE5I5IM2QktE" False) (C1 (MetaCons "CreateRoute'" PrefixI True) (((S1 (MetaSel (Just "_crVPCPeeringConnectionId") NoSourceUnpackedness SourceStrict DecidedStrict) (Rec0 (Maybe Text)) :*: S1 (MetaSel (Just "_crInstanceId") NoSourceUnpackedness SourceStrict DecidedStrict) (Rec0 (Maybe Text))) :*: (S1 (MetaSel (Just "_crEgressOnlyInternetGatewayId") NoSourceUnpackedness SourceStrict DecidedStrict) (Rec0 (Maybe Text)) :*: (S1 (MetaSel (Just "_crDestinationIPv6CidrBlock") NoSourceUnpackedness SourceStrict DecidedStrict) (Rec0 (Maybe Text)) :*: S1 (MetaSel (Just "_crNatGatewayId") NoSourceUnpackedness SourceStrict DecidedStrict) (Rec0 (Maybe Text))))) :*: ((S1 (MetaSel (Just "_crNetworkInterfaceId") NoSourceUnpackedness SourceStrict DecidedStrict) (Rec0 (Maybe Text)) :*: S1 (MetaSel (Just "_crGatewayId") NoSourceUnpackedness SourceStrict DecidedStrict) (Rec0 (Maybe Text))) :*: (S1 (MetaSel (Just "_crDryRun") NoSourceUnpackedness SourceStrict DecidedStrict) (Rec0 (Maybe Bool)) :*: (S1 (MetaSel (Just "_crDestinationCidrBlock") NoSourceUnpackedness SourceStrict DecidedStrict) (Rec0 (Maybe Text)) :*: S1 (MetaSel (Just "_crRouteTableId") NoSourceUnpackedness SourceStrict DecidedStrict) (Rec0 Text))))))
type Rs CreateRoute Source # 
Instance details

Defined in Network.AWS.EC2.CreateRoute

Request Lenses

crVPCPeeringConnectionId :: Lens' CreateRoute (Maybe Text) Source #

The ID of a VPC peering connection.

crInstanceId :: Lens' CreateRoute (Maybe Text) Source #

The ID of a NAT instance in your VPC. The operation fails if you specify an instance ID unless exactly one network interface is attached.

crEgressOnlyInternetGatewayId :: Lens' CreateRoute (Maybe Text) Source #

IPv6 traffic only
The ID of an egress-only Internet gateway.

crDestinationIPv6CidrBlock :: Lens' CreateRoute (Maybe Text) Source #

The IPv6 CIDR block used for the destination match. Routing decisions are based on the most specific match.

crNatGatewayId :: Lens' CreateRoute (Maybe Text) Source #

IPv4 traffic only
The ID of a NAT gateway.

crNetworkInterfaceId :: Lens' CreateRoute (Maybe Text) Source #

The ID of a network interface.

crGatewayId :: Lens' CreateRoute (Maybe Text) Source #

The ID of an Internet gateway or virtual private gateway attached to your VPC.

crDryRun :: Lens' CreateRoute (Maybe Bool) Source #

Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation . Otherwise, it is UnauthorizedOperation .

crDestinationCidrBlock :: Lens' CreateRoute (Maybe Text) Source #

The IPv4 CIDR address block used for the destination match. Routing decisions are based on the most specific match.

crRouteTableId :: Lens' CreateRoute Text Source #

The ID of the route table for the route.

Destructuring the Response

createRouteResponse Source #

Creates a value of CreateRouteResponse with the minimum fields required to make a request.

Use one of the following lenses to modify other fields as desired:

data CreateRouteResponse Source #

Contains the output of CreateRoute.

See: createRouteResponse smart constructor.

Instances
Eq CreateRouteResponse Source # 
Instance details

Defined in Network.AWS.EC2.CreateRoute

Data CreateRouteResponse Source # 
Instance details

Defined in Network.AWS.EC2.CreateRoute

Methods

gfoldl :: (forall d b. Data d => c (d -> b) -> d -> c b) -> (forall g. g -> c g) -> CreateRouteResponse -> c CreateRouteResponse #

gunfold :: (forall b r. Data b => c (b -> r) -> c r) -> (forall r. r -> c r) -> Constr -> c CreateRouteResponse #

toConstr :: CreateRouteResponse -> Constr #

dataTypeOf :: CreateRouteResponse -> DataType #

dataCast1 :: Typeable t => (forall d. Data d => c (t d)) -> Maybe (c CreateRouteResponse) #

dataCast2 :: Typeable t => (forall d e. (Data d, Data e) => c (t d e)) -> Maybe (c CreateRouteResponse) #

gmapT :: (forall b. Data b => b -> b) -> CreateRouteResponse -> CreateRouteResponse #

gmapQl :: (r -> r' -> r) -> r -> (forall d. Data d => d -> r') -> CreateRouteResponse -> r #

gmapQr :: (r' -> r -> r) -> r -> (forall d. Data d => d -> r') -> CreateRouteResponse -> r #

gmapQ :: (forall d. Data d => d -> u) -> CreateRouteResponse -> [u] #

gmapQi :: Int -> (forall d. Data d => d -> u) -> CreateRouteResponse -> u #

gmapM :: Monad m => (forall d. Data d => d -> m d) -> CreateRouteResponse -> m CreateRouteResponse #

gmapMp :: MonadPlus m => (forall d. Data d => d -> m d) -> CreateRouteResponse -> m CreateRouteResponse #

gmapMo :: MonadPlus m => (forall d. Data d => d -> m d) -> CreateRouteResponse -> m CreateRouteResponse #

Read CreateRouteResponse Source # 
Instance details

Defined in Network.AWS.EC2.CreateRoute

Show CreateRouteResponse Source # 
Instance details

Defined in Network.AWS.EC2.CreateRoute

Generic CreateRouteResponse Source # 
Instance details

Defined in Network.AWS.EC2.CreateRoute

Associated Types

type Rep CreateRouteResponse :: Type -> Type #

NFData CreateRouteResponse Source # 
Instance details

Defined in Network.AWS.EC2.CreateRoute

Methods

rnf :: CreateRouteResponse -> () #

type Rep CreateRouteResponse Source # 
Instance details

Defined in Network.AWS.EC2.CreateRoute

type Rep CreateRouteResponse = D1 (MetaData "CreateRouteResponse" "Network.AWS.EC2.CreateRoute" "amazonka-ec2-1.6.1-GgG1M0FWcBrE5I5IM2QktE" False) (C1 (MetaCons "CreateRouteResponse'" PrefixI True) (S1 (MetaSel (Just "_crrsReturn") NoSourceUnpackedness SourceStrict DecidedStrict) (Rec0 (Maybe Bool)) :*: S1 (MetaSel (Just "_crrsResponseStatus") NoSourceUnpackedness SourceStrict DecidedStrict) (Rec0 Int)))

Response Lenses

crrsReturn :: Lens' CreateRouteResponse (Maybe Bool) Source #

Returns true if the request succeeds; otherwise, it returns an error.

crrsResponseStatus :: Lens' CreateRouteResponse Int Source #

  • - | The response status code.