2013年11月28日 星期四

dhcpd6.conf & radvd.conf & ip6tables

1. On CentOS 6.4 or RHEL 6.4. install dhcp and radvd
>yum install dhcp radvd

2. Edit NIC config to add IPv6 address. /etc/sysconfig/network-scripts/ifcfg-eth0
IPV6INIT=yes
IPV6ADDR=3ffe:501:ffff:1::1/64

3. edit /etc/dhcp/dhcpd6.conf to assign address pool
subnet6 3ffe:501:ffff:1::/64 {
    range6 3ffe:501:ffff:1::2 3ffe:501:ffff:1::1000
}

4. edit /etc/radvd.conf
interface eth0
{
    AdvSendAdvert on;
    MinRtrAdvInterval 30;
    MaxRtrAdvInterval 100;
    AdvHomeAgentFlag off;
    AdvManagedFlag off; #M bit = 0
    AdvOtherConfigFlag on; #O bit = 1
    prefix fc00:1234:5678:9abc::/64
    {
        AdvOnLink on;
        AdvAutonomous on;
        AdvRouterAddr off;
    };
};

5. add rule in /etc/sysconfig/ip6tables (before -j REJECT line)
-A INPUT -p udp -m udp -m multiport --ports 546 -j ACCEPT
-A INPUT -p udp -m udp -m multiport --ports 547 -j ACCEPT

6. set dhcpd6 radvd start when system up
>chkconfig radvd on
>chkconfig dhcpd6 on

Reference:
http://www.lijyyh.com/2012/05/dhcpv6ip-ciscolinux-isc-dhcpwindows.html
https://access.redhat.com/site/documentation/en-US/Red_Hat_Enterprise_Linux/6/html/Deployment_Guide/s1-dhcp_for_ipv6_dhcpv6.html

2013年11月10日 星期日

Docker on Windows

Docker
目前只支援在Ubuntu下跑,若要在Windows下,可用VirtualBox搭配Vagrant使用
官方Install Document

1.首先把VirtualBox和Vagrant安裝起來

2. git clone docker and vagrant up
git clone https://github.com/dotcloud/docker.git
cd docker
vagrant up
vagrant up之後會有一台ubuntu vm被開啟來,docker daemon就在上面執行

3. 用putty登入127.0.0.1:2222
(ubuntu vm的port 22被vagrant自動bind到host的port 2222)
default user/password 是 vagrant/vagrant


4. 登入後 基本使用教學
sudo su
docker run -t -i ubuntu /bin/bash
跑ubuntu這個image,產生一個container,執行/bin/bash並進入interactive shell

5. 之後就是在container的環境了,用apt-get可以安裝軟體,Alt+P & Alt+Q sequence可以跳回host(ubuntu vm)而不會結束container,跳host之後可用docker attach 回去。

6. docker ps查看還在跑的container資訊,包括ID和port(docker run時用-p參數),docker ps -a可看全部

7. docker commit 可存下container成image,例如新安裝的軟體,方便下次直接run成新的container

8. 編寫Dockerfile可build新的image

9. docker images查看現在有的images

10. 若要讓vagrant bind ubuntu vm的port給host,在vagrant up之前要先set FORWARD_DOCKER_PORTS=True
(好像沒辦法正常up起來)

Best Practice

2013年11月4日 星期一