Hatena::ブログ(Diary)

(ひ)メモ このページをアンテナに追加 RSSフィード

2006-08-17 (Thu)

Linuxでiptablesを使ってDSRする

1. リアルサーバ側にもグローバルIPを振る必要がある(IPが少ないところは結構きついかも).

最速配信研究会 - ロードバランサの運用.DSRって知ってますか?

リアルサーバでは、VIPをループバックインターフェースにIP aliasすればいいので、リアルサーバの数だけグローバルIPアドレスを消費するってことはないような。(誤読してるかも

ただ、この方式だと、VIPの数だけいちいちリアルサーバにIP aliasして回らないといけないので、わりと大規模(VIPがたくさんある or リアルサーバがたくさんある)だとめんどくさいことこの上ない。

で、リアルサーバでこんなiptablesのルールを設定すれば、IP aliasしないでDSRできそうというのが主題。

VIP=10.1.1.0/24
iptables -t nat -A PREROUTING -d $VIP -j REDIRECT

多分、これでいけると思うんですけどちと自信なし。検証 and 詳しい説明はまた後日(するかもしれないししないかもしれない)。

(8/25追記)

こんなに簡単! Linuxでロードバランサ (1)の構成で、HTTPアクセスするクライアントがVIPと同じセグメントにいるとすると、

[lv1]
iptables -t mangle -A PREROUTING -d 10.10.31.100 -j MARK --set-mark 1
ip rule add prio 100 fwmark 1 table 100
ip route add local 0/0 dev lo table 100
echo 0 > /proc/sys/net/ipv4/conf/eth1/rp_filter

[w101,w102]
iptables -t nat -A PREROUTING -d 10.10.31.100 -j REDIRECT

[クライアントPC]
ip route add to 10.10.31.0/24 via 10.10.31.11

なん感じでDSRできたす。

詳しくはきっと後日DSASの中の人が教えてくれるんではないかと・・・

(/8/25追記)


iptablesの状態遷移の図示したものでは、

がわかりやすいす。

iptablesそのものについてはここがおすすめ。

iptablesは悪魔的にいろんなことができるす。たとえば、負荷分散とは関係ないけど、ssh の brute force アタックパケットの制限 -- DOS 的パケットをフィルタリングするとか。

最後に負荷分散とか冗長構成関係の書籍を。

サーバ負荷分散技術

サーバ負荷分散技術

CDNプロトコル入門

CDNプロトコル入門

はてなユーザーのみコメントできます。はてなへログインもしくは新規登録をおこなってください。

2003 | 11 | 12 |
2004 | 01 | 02 | 03 | 04 | 05 | 06 | 07 | 08 | 10 | 11 | 12 |
2005 | 01 | 02 | 03 | 05 | 08 | 09 | 10 | 11 | 12 |
2006 | 01 | 02 | 03 | 04 | 05 | 06 | 07 | 08 | 09 | 10 | 11 | 12 |
2007 | 01 | 02 | 03 | 04 | 05 | 06 | 07 | 08 | 09 | 10 | 11 | 12 |
2008 | 01 | 02 | 03 | 04 | 05 | 06 | 07 | 08 | 09 | 10 | 11 | 12 |
2009 | 01 | 02 | 03 | 04 | 05 | 06 | 07 | 08 | 09 | 10 | 11 | 12 |
2010 | 01 | 02 | 03 | 04 | 05 | 06 | 07 | 08 | 09 | 10 | 11 | 12 |
2011 | 01 | 02 | 03 | 04 | 05 | 06 | 07 | 12 |
2012 | 01 | 02 | 03 | 06 | 08 | 10 | 11 | 12 |
2013 | 01 | 02 | 03 | 05 | 06 | 07 | 08 | 09 | 10 | 11 | 12 |
2014 | 01 | 02 | 03 | 04 | 05 | 06 | 07 | 08 | 10 |
2015 | 01 | 02 | 07 | 10 |
2016 | 01 | 05 | 10 | 12 |