2013年07月02日

#自宅ラック勉強会 13.0 2013 IHAnetピアリング(その1)

自宅ラック勉強会 13.0 2013 ということで
今回はIHAnetのピアリングをやりました。

ちなみに「IHAnetとは何か」ということですが
詳しくは以下をご参照ください。
https://sites.google.com/site/internetundertunnels/

IHAnetというネットワークの中でAS番号払い出して
各自宅環境同士でIPv6のBGPを回す、といった感じでしょうか。

つまり、IHAnetに参加するには、前提条件として
・IPv6環境
・IPv6のBGPがしゃべれるルータ
・IPv4固定IP(なくてもいいけどあるほうが話が簡単)
というのが必要なわけですが、このうち「IPv6環境」というのがすっぽり頭から抜け落ちており、当日HURRICANE ELECTORICとトンネル張ってIPv6環境を用意するところからスタート、というお粗末さでした。申し訳ない。。
http://tunnelbroker.net/

で、今回やった構成はこんな感じです。
WS000198.JPG

1)HEとのIPIPトンネルを張って、IPv6のリーチャビリティを確保する。
2)各PeerとIPIPトンネルをIPv4で張って、TunnelInterfaceにIPv6アドレスを振る。
  各Peerとは/126のアドレス空間で接続。AS#1とはAS#1から払い出された/126で
  AS#2とはHEから取得した/48を/126に分割して割当

このうち今回は1)についてconfigを含め書こうと思います。
2)については次回更新のテーマということで。

ipv6 unicast-routing

interface Tunnel0
no ip address
ipv6 address FE80::BB03:1 link-local ←必要かどうか不明
ipv6 address ****:***:**:**::2/64 ←HEの「Client IPv6 Address」
tunnel source Dialer1 ←グローバルIPv4アドレスのインタフェース
tunnel destination **.**.**.** ←HEの「Server IPv4 Address」
tunnel mode ipv6ip

ipv6 route ::/0 Tunnel0

configにしてしまえばこの程度なんですけどね・・・
なかなか実際に設定して動かすのはそんなにすんなりじゃなかったり。

上記の構成図では1812JがPPPoE終端して直接グローバルIPv4アドレスを持っている図になっています。当初はこういう構成ではなく、FortigateがPPPoE終端して、LAN上に1812Jがいる構成でした。この構成でIHAnetに接続しているASがあるのでこれでいけると思ったんですが、誰もわかる人がおらず、僕もわからないので、結局1812Jで直接PPPoE終端させる構成に変更しました。ちなみにFortigateは(2013/07/01時点では)フレッツ光ネクストのセッションをもうひとつ占有して、動的IPのアカウントでインターネットに接続されています。これも固定IPにもどす予定です。そのためにIPv4固定IPを別にゲットしなければならないのですが、まだプロバイダが決まっていません。。

上記のHEと接続する設定ですが、HEと接続してIPv6環境を作ろうというのは #ipv6study 第1回で紹介されている内容であり、ブログ記事もそれなりに見かけるのですが、本編はRTX1100を使用した例で記載されており、ひっかかるブログ記事もIXの設定だったりして、意外とCiscoの事例がなかなか見つかりません。。

というわけで「これでいいのかよくわからない」という状況の中、参加者の皆様の多大なご尽力のもと、諸問題をひとつひとつクリアしていってwww.kame.netのIPv6アドレスにPingがいきました。めでたしめでたし。

ポイントはTunnelよりもIPv6のルーティングですかね。。
IPv4での0.0.0.0/0に相当する表記が::/0というのもとっさには思い出せなく
Tunnelの設定例ばかりでRoutingが書いていないブログが多かったので
ひっかかったところであります。
とりあえず「ルータをHEに接続してIPv6接続性確立する」configは
上記がすべてです。1812Jの場合。

次回更新ではASとのピアリングについて書こうと思います。
posted by maroon at 00:18| Comment(0) | IT_勉強会 | このブログの読者になる | 更新情報をチェックする

2013年04月28日

#自宅ラック勉強会 3.0 2013 Kickstartサーバ構築手順

#自宅ラック勉強会 3.0 2013 でやった、Kickstartサーバの構築手順をまとめます。

1)必要なパッケージをインストール
yum -y install syslinux
yum -y install dhcpd
yum -y install xinetd
yum -y install nfs
yum install tftp-server tftp
rpm -qa | grep tftp
tftp-0.42-3.1.el5.centos
tftp-server-0.42-3.1.el5.centos
rpm -qa | grep dhcp
dhcpv6-client-1.0.10-4.el5
dhcp-3.0.5-18.el5

2)ISOイメージのアップロード
SCP等でOS(今回はCentOS5.9を使用)イメージをサーバに送る
今回は/tmp直下に置いた。

3)ISOイメージのマウント、展開
mkdir /mnt/centos
mount -t iso9660 -o loop /tmp/CentOS-5.9-x86_64-bin-DVD-1of2.iso /mnt/centos
cd /mnt/centos
mkdir /kickstart/isos
cp -r * /kickstart/isos

展開が終わったらISOイメージはumountしたうえで削除
(ディスク容量節約のため)
umount /mnt/centos
rm -rf /tmp/CentOS-5.9-x86_64-bin-DVD-1of2.iso

4)設定ファイルのコピー
mkdir /tftpboot
cp /usr/lib/syslinux/pxelinux.0 /tftpboot/
cp /kickstart/isos/images/pxeboot/initrd.img /tftpboot/
cp /kickstart/isos/images/pxeboot/vmlinuz /tftpboot/

5)PXEブート用の設定ファイルを作成
mkdir /tftpboot/pxelinux.cfg
vi /tftpboot/pxelinux.cfg/default

/tftpboot/linux-install/pxelinux.cfg/defaultの中身

default centos5

label centos5
kernel vmlinuz
append load initrd=initrd.img devfs=nomount ks=nfs:[NFSサーバのIPアドレス]:/kickstart/ksconfig


6)DHCPサーバの設定
ネットワークアドレス:172.17.0.0/16
デフォルトゲートウェイ:172.17.0.1
Kickstart(PXE)サーバ兼DHCPサーバ兼NFSサーバ:172.17.0.254
とした場合の記載例。

vi /etc/dhcpd.conf

ddns-update-style interim;
ignore client-updates;

subnet 172.17.0.0 netmask 255.255.0.0 {

# --- default gateway
option routers [ルータのIPアドレス(デフォルトゲートウェイ)];
option subnet-mask 255.255.0.0;

#option nis-domain "domain.org";
#option domain-name "domain.org";
option domain-name-servers 8.8.8.8;

option time-offset -18000; # Eastern Standard Time
filename "pxelinux.0";
next-server 172.17.0.254;
# option ntp-servers 192.168.1.1;
# option netbios-name-servers 192.168.1.1;
# --- Selects point-to-point node (default is hybrid). Don't change this unless
# -- you understand Netbios very well
# option netbios-node-type 2;

range dynamic-bootp 172.17.1.0 172.17.1.253;
default-lease-time 21600;
max-lease-time 43200;

# we want the nameserver to appear at a fixed address
# host ns {
# next-server marvin.redhat.com;
# hardware ethernet 12:34:56:78:AB:CD;
# fixed-address 207.175.42.254;
# }
}


7)Kickstartコンフィグの作成
cp /root/anaconda-ks.cfg /kickstart/ksconfig
vi /kickstart/ksconfig

# Kickstart file automatically generated by anaconda.

install
#cdrom
nfs --server=172.17.0.254 --dir=/kickstart/isos
lang ja_JP.UTF-8
keyboard jp106
#network --device eth0 --bootproto static --ip 172.17.0.254 --netmask 255.255.0.0 --gateway 172.17.0.1 --nameserver 8.8.8.8,8.8.4.4 --hostname dhcp01
network --device eth0 --bootproto=dhcp --hostname localhsot
rootpw --iscrypted ******** ←実際はハッシュになってる。自分で書く必要なし
firewall --disabled
authconfig --enableshadow --enablemd5
selinux --disabled
timezone Asia/Tokyo
bootloader --location=mbr --driveorder=sda
text
reboot
#clearpart --drives=sda --all --initlabel --linux
#clearpart --drives=sda --all --initlabel
#zerombr
clearpart --linux --drives=sda --all --initlabel
part /boot --fstype ext3 --size=100 --ondisk=sda
part / --fstype ext3 --size=10000 --ondisk=sda --grow
part swap --size=2048 --ondisk=sda
# The following is the partition information you requested
# Note that any partitions you deleted are not expressed
# here so unless you clear all partitions first, this is
# not guaranteed to work
#clearpart --all --drives=sda
#part /boot --fstype ext3 --size=100 --ondisk=sda
#part pv.2 --size=0 --grow --ondisk=sda
#volgroup VolGroup00 --pesize=32768 pv.2
#logvol swap --fstype swap --name=LogVol01 --vgname=VolGroup00 --size=1000 --grow --maxsize=4000
#logvol / --fstype ext3 --name=LogVol00 --vgname=VolGroup00 --size=1024 --grow

%packages
@base
@core
@development-tools
@japanese-support
@x-software-development
iscsi-initiator-utils
fipscheck
device-mapper-multipath
sgpio
imake
mesa-libGLU-devel


一番苦戦したのはここです。

clearpart --linux --drives=sda --all --initlabel
part /boot --fstype ext3 --size=100 --ondisk=sda
part / --fstype ext3 --size=10000 --ondisk=sda --grow
part swap --size=2048 --ondisk=sda

clearpartは結構細かく設定してあげないとインストールが途中で止まります。
仮想マシンへのOSインストールなので、ディスクがアンフォーマット状態だからです。
あと自動でパーティショニングさせるのもうまくいかなかったので
決め打ちでパーティショニングするようにpartを細かく書いています。
ここらへんは再考の余地がありそうです。

8)NFS設定
vi /etc/exports

/kickstart *


9)サービス無効化とか再起動とか
/etc/init.d/iptables stop
chkconfig iptables off
setenforce 0
/etc/init.d/dhcpd restart
/etc/init.d/xinetd restart
/etc/init.d/nfs restart

これで、ESXiとか使って空の仮想マシンを作成して
起動してPXEブートして自動でインストールできればおk。
なんか忘れてる気がするけれど、思い出したら修正しときます。

※参考URL

手順のベースになったサイト
http://blog.layer8.sh/ja/2011/12/21/pxe%E3%83%8D%E3%83%83%E3%83%88%E3%83%AF%E3%83%BC%E3%82%AF%E3%83%96%E3%83%BC%E3%83%88%E3%81%A7centos%E3%82%92%E3%82%A4%E3%83%B3%E3%82%B9%E3%83%88%E3%83%BC%E3%83%ABkickstart%E3%81%AB%E3%82%88%E3%82%8B/

Kickstartのconfigを書くときに参考にしたサイト。オプションの説明が細かく書いてある。
https://access.redhat.com/site/documentation/ja-JP/Red_Hat_Enterprise_Linux/6/html/Installation_Guide/s1-kickstart2-options.html

partで苦戦してるときに参考にしたサイト。なんか見覚えのある名前です。
http://mikeda.jp/wiki/linux:%E3%82%A4%E3%83%B3%E3%82%B9%E3%83%88%E3%83%BC%E3%83%AB%E8%87%AA%E5%8B%95%E5%8C%96:kickstart


本日の作業では@kometchtechさんに大変お世話になりました。
ありがとうございました。
posted by maroon at 23:41| Comment(0) | IT_勉強会 | このブログの読者になる | 更新情報をチェックする

[速報版] #自宅ラック勉強会 3.0 Kickstartサーバ構築

あとでちゃんとまとめるつもりで、一旦メモ。

ベースの手順:参考にしたサイトは以下。ただしhttpを使っている部分はNFSに変更したりした。
http://blog.layer8.sh/ja/2011/12/21/pxe%E3%83%8D%E3%83%83%E3%83%88%E3%83%AF%E3%83%BC%E3%82%AF%E3%83%96%E3%83%BC%E3%83%88%E3%81%A7centos%E3%82%92%E3%82%A4%E3%83%B3%E3%82%B9%E3%83%88%E3%83%BC%E3%83%ABkickstart%E3%81%AB%E3%82%88%E3%82%8B/

CnetOSのISO imageをSCPでコピーしてmount
mountしたところからファイルを配布用ディレクトリ/kickstart/isos/に丸コピ
unmountしてISO imageを削除

anaconda-ks.cfgをコピーしてきてKickstart用のconfigファイルに仕立てあげるんですが、その時役に立つのが以下サイト。オプションの解説が書いてある。
https://access.redhat.com/site/documentation/ja-JP/Red_Hat_Enterprise_Linux/6/html/Installation_Guide/s1-kickstart2-options.html

「未使用のディスクに書き込みしていい?」「パーティション作成時のオプション」とかがなかなかスキップできなかったので、自動でパーティション切らせるのをやめて、パーティショニングも設定に書いた。参考にしたのは以下サイト。
http://mikeda.jp/wiki/linux:%E3%82%A4%E3%83%B3%E3%82%B9%E3%83%88%E3%83%BC%E3%83%AB%E8%87%AA%E5%8B%95%E5%8C%96:kickstart

あとで設定変更手順と作成・変更したファイルの内容を書き出すよ
とりあえず一旦ここまで。
posted by maroon at 16:55| Comment(0) | IT_勉強会 | このブログの読者になる | 更新情報をチェックする
×

この広告は1年以上新しい記事の投稿がないブログに表示されております。