How to support 50K IPv6 addresses on a single machine?
Hi,
Does anyone know if there is any way to configure 50K "virtual" IPv6 addresses on loopback device in Linux?
The aim is not to add all 50K IPv6 addresses one by one on the loopback/ETH device which will probably mess up the ip table on the system.
In IPv4, I am able to achieve that by specifying the IP address subnet on loopback device (e.g: "ip addr add 10.1.0.0/16 dev lo").
The same command does not seem to work the same way for IPv6. It only adds a single IPv6 address on loopback device and it automatically adds an "unreachable route" entry on the ipv6 route table for that IPv6 network prefix.
The reason I need this is because I am working on an application which tries to simulate 50K IPv6 addresses on a single Linux box.
The kernel version I am currently using is RHEL 2.6.9.55.
Any help would be greatly appreciated!!
Thanks!
Kai
Realizing the promise of Apache® Hadoop® requires the effective deployment of compute, memory, storage and networking to achieve optimal results. With its flexibility and multitude of options, it is easy to over or under provision the server infrastructure, resulting in poor performance and high TCO. Join us for an in depth, technical discussion with industry experts from leading Hadoop and server companies who will provide insights into the key considerations for designing and deploying an optimal Hadoop cluster.
Sponsored by AMD
Built-in forensics, incident response, and security with Red Hat Enterprise Linux 6
Every security policy provides guidance and requirements for ensuring adequate protection of information and data, as well as high-level technical and administrative security requirements for a system in a given environment. Traditionally, providing security for a system focuses on the confidentiality of the information on it. However, protecting the data integrity and system and data availability is just as important. For example, when processing United States intelligence information, there are three attributes that require protection: confidentiality, integrity, and availability.
Learn more about catching the bad guy in this free white paper.
Sponsored by DLT Solutions
| Designing Electronics with Linux | May 22, 2013 |
| Dynamic DNS—an Object Lesson in Problem Solving | May 21, 2013 |
| Using Salt Stack and Vagrant for Drupal Development | May 20, 2013 |
| Making Linux and Android Get Along (It's Not as Hard as It Sounds) | May 16, 2013 |
| Drupal Is a Framework: Why Everyone Needs to Understand This | May 15, 2013 |
| Home, My Backup Data Center | May 13, 2013 |
- New Products
- Linux Systems Administrator
- Senior Perl Developer
- Technical Support Rep
- UX Designer
- Web & UI Developer (JavaScript & j Query)
- Designing Electronics with Linux
- Dynamic DNS—an Object Lesson in Problem Solving
- Making Linux and Android Get Along (It's Not as Hard as It Sounds)
- Using Salt Stack and Vagrant for Drupal Development
- Reply to comment | Linux Journal
6 hours 27 min ago - Reply to comment | Linux Journal
6 hours 44 min ago - Favorite (and easily brute-forced) pw's
8 hours 35 min ago - Have you tried Boxen? It's a
14 hours 27 min ago - seo services in india
18 hours 58 min ago - For KDE install kio-mtp
18 hours 59 min ago - Evernote is much more...
20 hours 59 min ago - Reply to comment | Linux Journal
1 day 5 hours ago - Dynamic DNS
1 day 6 hours ago - Reply to comment | Linux Journal
1 day 7 hours ago
Enter to Win an Adafruit Pi Cobbler Breakout Kit for Raspberry Pi

It's Raspberry Pi month at Linux Journal. Each week in May, Adafruit will be giving away a Pi-related prize to a lucky, randomly drawn LJ reader. Winners will be announced weekly.
Fill out the fields below to enter to win this week's prize-- a Pi Cobbler Breakout Kit for Raspberry Pi.
Congratulations to our winners so far:
- 5-8-13, Pi Starter Pack: Jack Davis
- 5-15-13, Pi Model B 512MB RAM: Patrick Dunn
- 5-21-13, Prototyping Pi Plate Kit: Philip Kirby
- Next winner announced on 5-27-13!
Featured Jobs
| Linux Systems Administrator | Houston and Austin, Texas | Host Gator |
| Senior Perl Developer | Austin, Texas | Host Gator |
| Technical Support Rep | Houston and Austin, Texas | Host Gator |
| UX Designer | Austin, Texas | Host Gator |
| Web & UI Developer (JavaScript & j Query) | Austin, Texas | Host Gator |
Free Webinar: Hadoop
How to Build an Optimal Hadoop Cluster to Store and Maintain Unlimited Amounts of Data Using Microservers
Realizing the promise of Apache® Hadoop® requires the effective deployment of compute, memory, storage and networking to achieve optimal results. With its flexibility and multitude of options, it is easy to over or under provision the server infrastructure, resulting in poor performance and high TCO. Join us for an in depth, technical discussion with industry experts from leading Hadoop and server companies who will provide insights into the key considerations for designing and deploying an optimal Hadoop cluster.
Some of key questions to be discussed are:
- What is the “typical” Hadoop cluster and what should be installed on the different machine types?
- Why should you consider the typical workload patterns when making your hardware decisions?
- Are all microservers created equal for Hadoop deployments?
- How do I plan for expansion if I require more compute, memory, storage or networking?



Not that easy FredR
FredR - I am looking into doing the exact same thing, with simulating thousands of IPv6 addresses on the system without having to create all the addresses, and most importantly so the system doesn't have the overhead of maintaining all of the IP addresses. In IPv4, it is possible to define a subnet on the loopback device in the way that Kai mentioned in his original post. That would allow all IP's from 10.1.0.0 --> 10.1.255.255 to be usable by the system... this is the same thing that I'm looking to accomplish with IPv6... basically to define a usable subnet on the loopback for IPv6, not just a script to generate all the IPv6 addresses as aliases...
any ideas?
Thanks,
Matt
maybe....
for ip in {yourRangeOfIp}
do sudo /sbin/ifconfig lo inet6 add 2607:f0d0:1002:11::${ip}/64
done
might work
This seems pretty easy. Pick
This seems pretty easy. Pick a real interface (eth0 for example). Write a script that adds subinterfaces to eth0 with your ipv6 addresses.
eth0.0 = 1st ipv6 address
eth0.1 = 2nd ipv6 address
and so on. Or you could use the iproute2 "ip" command to add several IPv6 addresses to a single interface:
/sbin/ip addr add 2001:470:X:XXX::XXXX:XXXX:17/64 dev eth0
Chances are, if the addresses are in the same subnet, you won't modify your host's routing table at all. In the above example, ::17 and ::18 would fall under the same /64 subnet.
-- FLR or flrichar is a superfan of Linux Journal, and goofs around in the LJ IRC Channel