diff --git a/moto/ec2/models/subnets.py b/moto/ec2/models/subnets.py
--- a/moto/ec2/models/subnets.py
+++ b/moto/ec2/models/subnets.py
@@ -59,6 +59,9 @@ def __init__(
         self._subnet_ips = {}  # has IP: instance
         self.state = "available"
 
+        # Placeholder for response templates until Ipv6 support implemented.
+        self.ipv6_native = False
+
     @property
     def owner_id(self):
         return get_account_id()
diff --git a/moto/ec2/responses/subnets.py b/moto/ec2/responses/subnets.py
--- a/moto/ec2/responses/subnets.py
+++ b/moto/ec2/responses/subnets.py
@@ -105,6 +105,7 @@ def disassociate_subnet_cidr_block(self):
     {% endif %}
     {% endfor %}
     </ipv6CidrBlockAssociationSet>
+    <ipv6Native>{{ 'false' if not subnet.ipv6_native else 'true' }}</ipv6Native>
     <subnetArn>arn:aws:ec2:{{ subnet._availability_zone.name[0:-1] }}:{{ subnet.owner_id }}:subnet/{{ subnet.id }}</subnetArn>
     <tagSet>
         {% for tag in subnet.get_tags() %}
@@ -156,6 +157,7 @@ def disassociate_subnet_cidr_block(self):
         {% endfor %}
         </ipv6CidrBlockAssociationSet>
         <subnetArn>arn:aws:ec2:{{ subnet._availability_zone.name[0:-1] }}:{{ subnet.owner_id }}:subnet/{{ subnet.id }}</subnetArn>
+        <ipv6Native>{{ 'false' if not subnet.ipv6_native else 'true' }}</ipv6Native>
         {% if subnet.get_tags() %}
           <tagSet>
             {% for tag in subnet.get_tags() %}

Hi @davidaah, thanks for raising this - will mark it as an enhancement.

If you want to contribute this to Moto, PR's are always welcome!
diff --git a/tests/test_ec2/test_subnets.py b/tests/test_ec2/test_subnets.py
--- a/tests/test_ec2/test_subnets.py
+++ b/tests/test_ec2/test_subnets.py
@@ -354,6 +354,7 @@ def test_create_subnet_response_fields():
     subnet.should.have.key("MapPublicIpOnLaunch").which.should.equal(False)
     subnet.should.have.key("OwnerId")
     subnet.should.have.key("AssignIpv6AddressOnCreation").which.should.equal(False)
+    subnet.should.have.key("Ipv6Native").which.should.equal(False)
 
     subnet_arn = "arn:aws:ec2:{region}:{owner_id}:subnet/{subnet_id}".format(
         region=subnet["AvailabilityZone"][0:-1],
@@ -390,6 +391,7 @@ def test_describe_subnet_response_fields():
     subnet.should.have.key("MapPublicIpOnLaunch").which.should.equal(False)
     subnet.should.have.key("OwnerId")
     subnet.should.have.key("AssignIpv6AddressOnCreation").which.should.equal(False)
+    subnet.should.have.key("Ipv6Native").which.should.equal(False)
 
     subnet_arn = "arn:aws:ec2:{region}:{owner_id}:subnet/{subnet_id}".format(
         region=subnet["AvailabilityZone"][0:-1],

Moto missing new EC2 Subnet attribute "Ipv6Native"
The EC2 Subnet data model was updated to support the launch of IPv6-only subnets as seen in the `Response Syntax` here: https://boto3.amazonaws.com/v1/documentation/api/latest/reference/services/ec2.html#EC2.Client.describe_subnets

As part of this release a new attribute was added to indicate that a subnet is IPv6 only.

While it would be nice to add full support for ipv6 only subnets to moto over time, in the short term it would be great if the relevant describe responses included this new attribute with value set to False

tests/test_ec2/test_subnets.py::test_describe_subnet_response_fields tests/test_ec2/test_subnets.py::test_create_subnet_response_fields
tests/test_ec2/test_subnets.py::test_describe_subnets_dryrun tests/test_ec2/test_subnets.py::test_subnet_should_have_proper_availability_zone_set tests/test_ec2/test_subnets.py::test_available_ip_addresses_in_subnet_with_enis tests/test_ec2/test_subnets.py::test_availability_zone_in_create_subnet tests/test_ec2/test_subnets.py::test_modify_subnet_attribute_validation tests/test_ec2/test_subnets.py::test_create_subnet_with_invalid_cidr_block_parameter tests/test_ec2/test_subnets.py::test_non_default_subnet tests/test_ec2/test_subnets.py::test_create_subnet_with_invalid_cidr_range tests/test_ec2/test_subnets.py::test_subnet_create_vpc_validation tests/test_ec2/test_subnets.py::test_create_subnet_with_invalid_availability_zone tests/test_ec2/test_subnets.py::test_subnets tests/test_ec2/test_subnets.py::test_default_subnet tests/test_ec2/test_subnets.py::test_get_subnets_filtering tests/test_ec2/test_subnets.py::test_create_subnet_with_tags tests/test_ec2/test_subnets.py::test_describe_subnets_by_vpc_id tests/test_ec2/test_subnets.py::test_create_subnets_with_multiple_vpc_cidr_blocks tests/test_ec2/test_subnets.py::test_associate_subnet_cidr_block tests/test_ec2/test_subnets.py::test_run_instances_should_attach_to_default_subnet tests/test_ec2/test_subnets.py::test_disassociate_subnet_cidr_block tests/test_ec2/test_subnets.py::test_describe_subnets_by_state tests/test_ec2/test_subnets.py::test_subnet_tagging tests/test_ec2/test_subnets.py::test_subnet_get_by_id tests/test_ec2/test_subnets.py::test_available_ip_addresses_in_subnet tests/test_ec2/test_subnets.py::test_create_subnets_with_overlapping_cidr_blocks tests/test_ec2/test_subnets.py::test_create_subnet_with_invalid_cidr_range_multiple_vpc_cidr_blocks tests/test_ec2/test_subnets.py::test_modify_subnet_attribute_assign_ipv6_address_on_creation tests/test_ec2/test_subnets.py::test_modify_subnet_attribute_public_ip_on_launch