Unix & Linux Stack Exchange is a question and answer site for users of Linux, FreeBSD and other Un*x-like operating systems. Join them; it only takes a minute:

Sign up
Here's how it works:
  1. Anybody can ask a question
  2. Anybody can answer
  3. The best answers are voted up and rise to the top

I want to setup IPv6 in my LAN, but also want to have some machine to use IPv4 only. How do I do such setup so that every machine can communicate with each other ?

All machines supports dual-ip stack.

share|improve this question
All machines support dual-stack, but do all machines have IPv4 addresses? – Alexios Jun 29 '12 at 10:13

The simple answer is to use dual-stack. Give all devices IPv4 addresses. Devices that support IPv6 will likely already have configured themselves, but will need some help to communicate with each other. Setting up a zeroconf (avahi, bonjour, etc) server will help them find each other by name.

If your IPv6 provider (Tunnel Broker, or ISP) have provided you with a routeable address block setup radvd to help them autoconfigure addresses. radvd can also be used to distribute the address of your DNS servers.

You will need a good firewall as IPv6 is not protected from Internet access by a NAT device.

share|improve this answer
NAT does not protect you from the Internet either. What you think is NAT protecting you is actually a built in firewall on the NAT device. Whether NAT or no, a firewall is the only thing providing the protection. – bahamat Jun 29 '12 at 19:10
@bahamat NAT to private addresses does prevent direct access to the devices behind it (except for those that are port forwarded to). As such it is an effective firewall for incoming connections. IPv6 does not offer such protection. – BillThor Jun 30 '12 at 3:47
No, that's the firewall. NAT without a firewall is just a router and I can get to the inside if I am one hop away and craft the right packets. NAT != firewall. – bahamat Jun 30 '12 at 6:09
@bahamat On the stateful NAT configurations I have used if you can craft the right packets, you are likely already passing through. The firewall further limits which port can pass in or out. – BillThor Jun 30 '12 at 23:41
The first part where you're talking about "stateful" that's a firewall. The second part where you're talking about which packets can pass in or out, that's also a firewall. NAT usually implies a firewall but NAT != firewall. Just like a car always comes with seat belts, it's not the seat belts that allow you to drive. Don't confuse one with the other. – bahamat Jul 1 '12 at 23:22

Set up the IPV4-only machines specially. E.g. using NetworkManager to disable IPV6 on the LAN connection. Done.

If they're mobile... I don't think you can tie those settings to a given wired network, at least not in the GUI. In that case you may have to accept the machines are mangled and will not work on IPv6-only nets.

They'll talk to each other just fine. Mainly over IPv4 :) if you're using linux MDNS for name resolution (.local addresses with Avahi). I have a feeling the same may apply with Samba (Windows-compatibility network software). Hopefully systemd-resolved will be more IPv6-aware.

But this seems a really arbitrary question ("some of my machines are religious objectors to IPv6"). It would be nice to indicate reason(s) for this requirement so we could help you more. If there's a way to avoid mangling your machines this would generally be preferable.

share|improve this answer

Your Answer


By posting your answer, you agree to the privacy policy and terms of service.

Not the answer you're looking for? Browse other questions tagged or ask your own question.