I am trying to do a project about IPv6. My first query is, can we completely disable our IPv4 address and use only our IPv6 address? My second query is, how can an IPv6-only host communicate with an IPv4-only host? What type of tunnelling is used for that? When I searched about 6to4 and 6in4, I found that these tunnelling methods are for two IPv6 hosts to communicate over an IPv4 network. So how can an IPv6 host communicate with an IPv4 host?
Networking – Can we use IPv6 addresses only
ipv4ipv6networking
Related Solutions
6to4 is a mechanism where a router with a public IPv4 address can be an IPv6 gateway/provider for a whole set of LANs. The IPv6 prefix starts with 2002:
followed by the 32 bits of the public IPv4 address. This gives a /48
prefix which can be used to provide 65536 LANs with a /64
each. The problem is that to reach the normal IPv6 internet the 6to4 router needs to use public 6to4 relays, and these relays are not always reliable. Add to this that the inbound and outbound traffic use different relays most of the time, and the reliability of 6to4 networks leaves a lot to be desired. These days using 6to4 is strongly discouraged.
Teredo is a built-in mechanism in Windows systems that is used to give a single system behind an IPv4 NAT access to IPv6. Like 6to4 it uses public relays. Teredo combines this with a setup protocol using Teredo servers (by default those hosted by Microsoft) to detect and break through the IPv4 NAT. It is not very reliable, but Teredo is only used when explicitly connecting to an IPv6 address and not when connecting to a hostname and looking up the addresses in DNS. This happens for example when using BitTorrent, and there the lesser reliability doesn't matter a lot.
ISATAP is a managed technology for providing IPv6 on an IPv4 network. It emulates IPv6 connectivity on the IPv4 infrastructure. IPv6 Router Discovery usually uses multicast. This isn't possible on an infrastructure based on IPv6-over-IPv4 tunnels, so ISATAP solves that in a different way. An ISATAP router is provided on the network and its IPv4 address is made known to the ISATAP hosts (usually using the hostname isatap. in DNS). The ISATAP hosts then can use that address to set up their IPv6 connectivity.
In all cases it is better to get native IPv6 on your networks. Preferably through your ISP, and otherwise through a tunnelbroker like tunnelbroker.net or sixxs.net.
It depends on the protocol, and you didn't provide much details. Usually something like haproxy will work. There is good documentation for the opposite situation (making content on an IPv4-only server available over IPv6) on the ISOC Deploy360 website that you can use as a starting point. Just reverse the IP addresses.
A simple example based on that documentation:
global
user haproxy
group haproxy
daemon
log /dev/log daemon
defaults
timeout client 5000
timeout connect 5000
timeout server 10000
listen webserver1
bind 192.0.2.1:80
mode tcp
server webserver1 2001:db8:abc:123::cafe:80
The IPv4 address is the address of your dual-stack server and the IPv6 address is the address of the IPv6-only server.
Best Answer
Yes you can. ( not, if you are providing general public services "server")
Using NAT64/DNS64. You can provide your own NAT64/DNS64-Gateway or you can just use some public DNS64-servers, like
The description is here:
http://ipv6.lt/nat64_en.php (discontinued)
http://www.trex.fi/2011/dns64.html
No tunnel. It is translation. It has some limits like the NAT you already know with IPv4.
But IPv6-hosts are not touched by NAT64 - the communicate straight forward.
Both tunnels are mostly obsolete. Some ISP use these tunnels in 6rd, but this is no good idea anymore.
Some ISP use 4in6 for ds-lite.(based on native IPv6-network)
To complete NAT64 you can add 464XLAT.