Posts tagged ‘vps’

Linode: Migrating from HE.net IPv6 tunnel to native IPv6

A few days ago, Linode.com announced native IPv6 roll out in their datacenters. Now, while I haven’t wrote about Linode in the past 6 months, I am still a happy customer. I am documenting the steps I took to migrate away from my HE.net tunnel.

  1. Set the TTL low on any DNS addresses that you will be changing. Ideally, do this a fair amount ahead of time.
  2. Send in a support ticket to get your /64 allocated. Sidenote: response time: 4 minutes
  3. Reboot ‘node so the backend system deploys your IPv6 after it was allocated. Verify IPV6 status on your ‘node.
  4. From a different IPv6 host, run nmap -6 on the existing address to verify listening services.
  5. Update DNS, define static networking, be happy.

Another reason to love Linode.com

It should be no secret that this site and my other co-location needs are hosted at Linode.com, for which I am a happy customer running Gentoo Linux.

The reason for this post is that after an announcement today. All I had to do was reboot and then I received a 42% RAM increase. Yay.

Thanks Linode, you are exceeding your competition!
(Shameless plug for my referral code :) )

Gentoo: static IPv4 & IPv6 (HE.net tunnel)

For some reason, Linode.com (my review) sets up their hosts to use dhcpd to grab the static IPv4 address on boot. This is in contrast to Host Virtual which uses the “Gentoo-way” to set static addresses. Now, there isn’t anything exactly wrong with using dhcpd on hosts with static addresses, actually, it may be simpler (and this is probably why they did it). However, I don’t like it for a few reasons, booting takes longer as it probes for IPs and it uses extra space for dhcpd binary on a low resource host – this includes extra time for updating. I know these are minor issues, but they bother me, at least. So, let’s take the easy way and assign eth0 the IP is should have:


Snippet from: /etc/conf.d/net
config_eth0=(
    "69.164.197.24 netmask 255.255.255.0 broadcast 69.164.197.255"
    )
routes_eth0=(
    "default via 69.164.197.1"
    )

So, that makes sense for all the right reasons and there is not much more to say. Let’s shift the attention to IPv6. Linode doesn’t offer IPv6 by default unlike their competition. To be honest, I don’t need IPv6, but it is something fun to play with and I have been learning something. It turns out that my tunnel from HE.net (free) is actually lower latency to some parts of the world than my IPv4 route and almost always less hops. Using the great examples from Robin (robbat2), I was able to put my IPv6 tunnel in /etc/conf.d/net too, so that is it created on reboot as tun0. Makes sense to do, right?

Snippet from: /etc/conf.d/net
HE="2001:0470" # 2001:470::/32 is the HE.net allocation
v6net64="${HE}:1f0f:2a0" # your initial /64 allocation from HE.net

# HE.net tunnel configuration
link_tun0="eth0" # tunnel IFACE (internet-facing iface, eg ppp0/eth0)
# tunnel IPv4 endpoint, remote, HE.net tells you this
iptunnel_tun0_remote="216.218.224.42"
# tunnel IPv4 endpoint, local
# this is the address of IFACE ${link_tun0}
iptunnel_tun0_local="69.164.197.24"

iptunnel_tun0="mode sit remote ${iptunnel_tun0_remote} local
${iptunnel_tun0_local} ttl 255 dev ${link_tun0}"
mtu_tun0=1280
config_tun0="${v6net64}::2/64" # /126
routes_tun0="default via ${v6net64}::1"

This is not exactly perfect, because I am using my tunnel’s /64 as my IPv6 address. The purists might say something about this practice, I respect that, but don’t really mind for my personal use. Of course, if you didn’t have a tunnel and instead had native IPv6, it would look a lot simpler because you just add the IP and route to the interface it is on, probably eth0.

Virtual Machine clocksource issue

You have probably seen the Host Virtual advertisements on the sidebar of gentoo.org website.

I ran into a weird clocksource issue on my VPS that I haven’t seen elsewhere. This issue was that my time would progressively get worse and worse and eventually NTP could not keep up because the clock was so far out of date. This happened on a pretty quick interval, about 1-2 days until I had to manually reset it. I opened up a support case with Host Virtual and the suggestion was to change the kernel’s clocksource to jiffies, from tsc, or vice versa. (or use a newer kernel, but I was already at the latest 2.6.32.x kernel at the time) My kernel’s clocksource was at the default and I had to research the issue some more because I haven’t heard of this before.

In the kernel’s Documentation directory, I found some info. (Documentation/kernel-parameters.txt). There is quite some details in there, but the summary is that the default clocksource was ‘tsc’ on x86. I changed my kernel’s clocksource by the clocksource=jiffies kernel parameter. Rebooted the virtual machine and NTP has been able to keep time since.

I don’t really know the difference here and don’t care to research much more. It is fixed and maybe this info will help someone else someday.

New online home

If you have rss feeds to my old WP hosted blog, you may want to check them now and update if needed. That blog is closed for comments and I’ll rid google of it after it fully picks up this site. (Over 20,000 hits over there, thanks!)

My new home is located on a Gentoo VPS from a provider called Linode. I have nothing but good things to say about Linode right now. Service, response time, user community, admins in irc, price, etc. I have been working on setting up a webserver (this blog), email server – which caused me much pain overall, and a few other random things. For the most part, my new host is fully setup now and relatively hands free for major services.

Expect more [written] news from me soon here now that I got this project done. Oh, by the way, Linode has a referral program. If you appreciate some of the work I do for Gentoo, you should use my referral code to make a purchase there. Here is the link: http://www.linode.com/?r=b4fa70eb87c890e08baf7b0c7852fb7cecd8963b