Recent Comments

BIND+PHPによるDiCEで更新可能なダイナミックDNSサーバ構築
 [09/04] mortgage様
 [09/04] marijuana growing様
 [09/04] cotto vs chavez jr様
日記:CPU交換でサーバが劇的に軽くなった
 [09/01] Scarencah様
 [08/26] exexattDawitY様
 [08/23] ClidoDorpbodo様
DiCEのプラグイン編集
 [08/31] Elke Abrew様
 [08/29] hentai様
 [08/28] koniSorn様
Linux:cocotで文字コードの違うシステムにssh接続
 [08/29] sonneandgone様
 [08/25] Plalayfef様
 [08/24] melissagibso様
買った:メガネ21 Fit-mini
 [08/23] ケンタロウ様

Profile

名前:げんき
職業:ねじ屋さん
趣味:機械いじり
  買ったものや試したことを日記混じりで書きつづっております。

中の人

なかのひと
Graph 207.7.31
Year:  Month:  Day

<<< Windows - 壊れたファイル(未解決) <<<  ||  >>> DiCEのプラグイン編集 >>>

BIND+PHPによるDiCEで更新可能なダイナミックDNSサーバ構築

2007年07月31日

当初の目的とは全然違う方向に行ってしまったけど、
勢いづいて作ってしまったので紹介。

まず、DynamicDNSとは、動的IPアドレスで自宅サーバを運営するときに不可欠なサービス。
固定IPアドレスを取得してる俺としては、特にコレといって使い道なし。

なぜこれを作ってしまったかという顛末は別の機会に書くとして、何をどう作ったかという内容。
というか、主な仕様の紹介。

  1. WEBでユーザ登録できる。
  2. ユーザ名・パスワード・ドメイン名はデータベースに格納。(PostgreSQL)
  3. なんとパスワードはいっちょ前に暗号化まで。
  4. 更新には、nsupdateコマンドを利用。
  5. DiCEで更新できる。

細かいソースを書くのもあれなので、だいたいの概要を。

まずはWEBで登録出来るフォームを作成。
ユーザ名と、更新用のパスワード、希望サブドメイン+ドメインの組み合わせ。本登録URL送信用メールアドレスを入力すると、確認画面表示後、確認ボタンでランダムなURLを生成してメールを発射する。

ランダムな文字列は、PHPでランダムな文字列を作るで紹介してる関数を利用して作る。

ランダムなURLを生成する理由は、使えるメールアドレスなしで登録出来ないようにすることと、POSTで登録データをガシガシ送って大量にサブドメイン登録されるのを防ぐため。

やってることは、ランダムな文字列を生成して、それをそのままファイル名にして一時ファイルを作成。その中身は、登録情報。
メールで送るURLは、そのランダムな文字列をGETで送信するもの。
GETで送られた文字列名のファイルが存在すれば、今登録したパスワードを入力するフォームを表示。
これが通れば、データベースにすべての情報を書き込む。

これでユーザ登録は完了。


アップデートはアップデート用のPHPスクリプトにPOSTで各データを送ることでアップデートする。
何のデータも送らなければユーザ名・パスワード・ドメイン名・IPアドレスを入力するフォームを表示。

POSTでデータが送られてきたら、それを検証。
サブドメイン+ドメイン名がユニークなので、そこからユーザ名とパスワードを引っ張り出して認証。

パスワードの暗号化は、なんとなくやってみたかっただけなんだけど、とりあえず登録時に送られたパスワードをPHPのMD5()関数で暗号化してデータベースに登録。
データベースから引っ張り出した文字列と、md5("パスワードとして送られた文字列を")が同じなら認証通る。
つまりネットワーク上を流れるのは生のパスなんで、あんまり意味ないかと。

認証が通ればexec()関数でnsupdateコマンドを発行して更新する。

DiCEでの更新については、同じスクリプトをそのまま使える。
DiCEはHTTPでスクリプトにPOSTやGETデータを送信出来るので、
入力フォームと同じフォーマットでデータを送るようにプラグインを作ってやればいい。
これについて詳しくは別項で。

テスト公開。
Genkikko Server Dynamic Domain
問題が起こったら消す可能性あり。


2007.11.04追記
要望があったのでソース公開。
ツッコミ歓迎。
新規ユーザ登録スクリプト
DDNSアップデートスクリプト

これだけだと、仮登録ファイルだけで放置されたファイルがいつまでも残るので、
指定以上古いファイルを削除するスクリプトをcronで走らせる。
これについては近々別項で。

<<< Windows - 壊れたファイル(未解決) <<<  ||  >>> DiCEのプラグイン編集 >>>

アンケート

このページの内容はいかがでしたか?
片手間にポチっと送信してやってください。
役に立った 20
おもしろかった 4
ふつー 1
つまらなかった 2
欲しい情報と違った 2
Score:36

トラックバック

このエントリーのトラックバックURL:
http://www.genkikko.net/mt/mt-tb.cgi/37

コメント (113)

duuljdkzotksexrthwvb, mortgages, MZRnsTE.

xwsamjkuolkbrbjcpxdz, Celebrex, WKWmhLg.

yezlrwiaabmxcisvqkan, Live Sex, chaENpM.

bqcyxyrtnvygdonojgne, Free Porn, Bqdlmbr.

ikllwajlaofdzavivxsq, Tramadol, daCPEfg.

innyusvwhekpqprleuxq, Buy Valium, ijwfqht.

moqboelxexlekgxjgtfj, jamorama reviews, iQObGQU.

axceqlpmebdxosndizhh, Buy Soma, dHJbTgM.

izzvnzdlvtseerudbzzc, how to quit smoking, cUSpwYX.

ocbwyybparbacxhekobo, NuWave, VoWcwCM.

alkgwkhacxsbcuqadzzy, Generic zoloft, yYzXBaO.

yyghizzxcsynuerlivcz, Propecia, LfoPxLB.

nwajnznizwaxxjmiqdao, Valium, dpBlbWT.

nllxwmzrevfhqkwcryzf, Buy Tramadol, HEQebYJ.

aiinorvunydhhvqjitvk, pacman games, FogHlwo.

bgesgfndxrvqxfbidmmo, Funny Jokes, HMCMDfm.

penuugilxcckqzetrfqp, skid steer, ieBHHgN.

penuugilxcckqzetrfqp, skid steer, ieBHHgN.

hvefscoobnacccrklvne, Ambien, lDHPKzO.

vlihgjelklkvcjronelb, Buy Klonopin, aRJNzrc.

dyzhjdgqogewbajjkjxm, Iphone Porn, RIskeMu.

nhtmwhbuwkgsdgviepff, Codeine, BwuGYVM.

Distress ferments the humors, casts them into their meet channels, throws eccentric redundancies, and helps nature in those secret distributions, without which the body cannot subsist in its vigor, nor the man fake with cheerfulness.

Vex ferments the humors, casts them into their adapted channels, throws off redundancies, and helps cosmos in those secret distributions, without which the association cannot subsist in its vigor, nor the soul fake with cheerfulness.

Work out ferments the humors, casts them into their proper channels, throws off redundancies, and helps species in those secret distributions, without which the association cannot subsist in its vigor, nor the soul dissimulate with cheerfulness.

Work out ferments the humors, casts them into their right channels, throws eccentric redundancies, and helps species in those confidential distributions, without which the fuselage cannot subsist in its vigor, nor the man act with cheerfulness.

Vex ferments the humors, casts them into their meet channels, throws off redundancies, and helps species in those hush-hush distributions, without which the fuselage cannot subsist in its vigor, nor the soul fake with cheerfulness.

gmpcpllbioibtyjujibz, Klonopin, aGroZsK.

gmpcpllbioibtyjujibz, Klonopin, aGroZsK.

gmpcpllbioibtyjujibz, Klonopin, aGroZsK.

gmpcpllbioibtyjujibz, Klonopin, aGroZsK.

Distress ferments the humors, casts them into their right channels, throws off redundancies, and helps feather in those confidential distributions, without which the body cannot subsist in its vigor, nor the typification role of with cheerfulness.

Very nice site!

Hello! dceddee interesting dceddee site!

こんちはー。
いやぁ、お加減よろしくなかったですわー。
治りかけで忘年会行ったら怒涛の3日酔いに悩まされて連休が潰れました・・・

rndcの設定いかがでしょうか?
俺もちゃんと調べたわけではなく、
何かのサンプルをそのまま流用して想像で書き換えただけなんでw

余談:
佐倉、何もなかったです。
でも、駅の周りに居酒屋がいっぱいありました。

いっぱいあったけど、どこも入りづらくて
結局2日連続で魚民と白木屋っつーどこにでもある2件に入ってしまいました。
しかも同じ系列・・・
そして、馬刺し食って次の日ニュースで、白木屋の馬刺しに油が注入されてることが報道されてました。


「モンキーターン」ですねきっと。聞いたことのあるタイトルですそれ。
>当然の如く私の家には共に全巻揃っております。
さすがw

あと、半年ぐらい前になるでしょうか、たぶん学校へ行こうで競艇学校?みたいなのやってました。
すげー厳しそうでした。
あんなん俺無理です。

インディいいですね。ちゃんと見たことないですけど。
新谷かおるのジェントル萬という漫画が、たしかインディ題材にしてたような。

近くに大きなサーキットがあるといいですねぇ。
まぁ、うちも鈴鹿は1時間ちょっとぐらいでいけるんですけどねー。

oreoyaji:

げんき様こんばんは。

お加減如何ですか?
やはり恐れていた風邪をひいてしまったようですね。
お早く回復される事を祈ります。

なるほど、そうやって設定するのですか。
思いっきりネームサーバのグローバルIPを書き込んでました。
早速やってみたいと思います。

余談:
佐倉に行かれたんですか?
何にもない町だったんではないでしょうか(笑
瓦屋根の古い町並みで神社・仏閣・城址が有名みたいですが
特に興味がなければ面白くないですよね。
成田の成田山新勝寺に向かう参道が楽しいですよ。
美味しい今川焼きが食せます。
米屋(よねや)の羊羹も旨いっす。

>以前、競艇を題材にしたマンガを読んだことがあるような気がするのですが、
やはり速さにしても何にしても、何かを追求するってのは奥の深いものなのですね。

多分、げんき様が読まれた漫画は「モンキーターン」か女性が主役なら「競艇少女」と思われます。
当然の如く私の家には共に全巻揃っております。

確かに何かを追求するのは並大抵ではないですね。
一筋縄ではいかないというか…
特にギャンブル関係は金銭が掛っているのもあって、検討・予想に本気で追求し始めると外れたときは泣きが入ります。

先日、オーバルと言われてましたが、げんき様は「インディ」とかお好き何ですか?
私は関東に住んでいる事もあってツインリンク茂木には比較的簡単に行く事が出来るので、色々なレースを見に行ったりするのですが、オーバルレースではインディとストックカーは滅茶苦茶迫力があって面白いですよね。

こんにちは。

>いえいえ、これはまごう事なき犯罪だと思います。
やっぱそうですよねwww

-----------------------------------------

controls {
inet 12.34.56.78 port 953
allow { 13.57.91.35; } keys { "rndc-key"; };
};
-----------------------------------------

これは多分、12.34.56.78のほうが、自分のホストで、
13.57.91.35のほうが、rndcで更新を許可するクライアントだと思います。
ローカルでやるなら、両方127.0.0.1にして、
rndc.confのデフォルトサーバも127.0.0.1にすればいいんじゃないでしょうか?

aclを使うなら、
-----------------------------------------
acl allow_rndc {
127.0.0.1;
192.168.1.0/24;
}
-----------------------------------------
みたいなのを書いて、
-----------------------------------------
controls {
inet 12.34.56.78 port 953
allow { allow_rndc; } keys { "rndc-key"; };
};
-----------------------------------------
こうすればいいんじゃないですかね?
やってないので何ともですが・・・

>そもそも当該サーバからの操作はできないのですかね?
いや、これは出来ます。
やったことあります。
つか、DDNSをやる前はそんな状況でしたので間違いないです。

余談:
東京・千葉ともに乗り換えで一瞬降りただけで、
実際に滞在先は佐倉というとこでした。
成田に行く途中でした。

最近残業も楽しくないなと思ってたら、思いっきりカゼでした。
本日ついにダウン。家で寝てます。

>「ピアノの森」も「のだめカンタービレ」も、うちの彼女が知ってました。
流石、女の子ですね。
まぁ、30越えた大の男(私)が女性誌【KISS】を立ち読みしているのはどうかと思いますが、意外にレディコミって面白いんですよね。
「のだめ」を描いてる二ノ宮さんの漫画はどれも面白いですね。
大笑いする感じではないんですけど、クスクス笑えます。
「のだめ」はマジでお薦めっス!年明けに新春スペシャルでドラマやるみたいですしね。

>住之江は大阪市の南の方にあるので、新大阪からは結構離れてます。
そうなんですか。
結構乗り換えるんですね。
私が大阪に行きたい理由の1つで「競艇のメッカ」という事があるんですが、仕事休めないし、弾丸日帰りツアーを目論んでいるんです。
ほぼ毎年住之江競艇場で、年末に競艇の超BIGレース「賞金王決定戦」というのが開催されるのですが、大阪の競艇ファンはアツいですから、一緒に混じってめっちゃ大騒ぎしたいんですよ。
移動の事とか考えると1泊くらいはした方が良さそうですね。
>あまりギャンブルはしないので、競馬・競輪・競艇わからないですけど、
ようするにオーバルサーキットですよね。面白そうですよね。
めっちゃ面白いです。
競輪・オートは間違いなくオーバルコースのレースです。
競馬は距離によっては1周しませんし直線だけのレースもありますから何とも言い難いですね。
競艇は水の上という事もあり、ぐるぐる回るんですけど上記3種とは全く別物で、舟を車で言うところのドリフトさせながら旋回します。
早さだけを追求した車・バイクとかってかなりカッコイイものがありますけど、競艇も然りです。
げんき様を誘い込むわけではありませんけど、大阪の競艇選手はサービス精神も旺盛で個性的な選手が揃ってますから、1度遊びに行かれてみては如何ですか?
大阪支部には「松井繁・田中信一郎・湯川浩二」と他にも強い選手は沢山いるのですが、この3人を覚えておけば、面白いレースに出会えると思います。
ちなみに今週の水曜日から福岡で賞金王決定戦が始まりますが、「松井」と「湯川」は出場すると思います。
詳しくはスポーツ新聞をご覧ください。

以前、競艇を題材にしたマンガを読んだことがあるような気がするのですが、
やはり速さにしても何にしても、何かを追求するってのは奥の深いものなのですね。

さて、頭痛がひどいので寝ます。。。

oreoyaji:

げんき様こんにちは。

>本屋さんで本を写メるってのはどうなんですか?w
犯罪の香りがしますねw
いえいえ、これはまごう事なき犯罪だと思います。
しかし、本のお値段が高すぎなんで致し方なく、申し訳ないとは思いつつも…パシャリといってしまった次第です…ハイ。

げんき様の書かれたrndcのnamed.confに書く

controls {
inet 12.34.56.78 port 953
allow { 13.57.91.35; } keys { "rndc-key"; };
};

がよくわからないんです。
取り敢えず、リモートでは無く当該ネームサーバから実行してみようと設定をしているのですが、Failedのオンパレードで、@ITの説明を読んでみるとACLの設定するような事が書いてあって、ネームサーバのIPとウェブサーバのIPを書いたんですけど、それがいけないのか、上記controlsの書き方を間違えているのか?全くもって?です。
inet部のIPはネームサーバのアドレスじゃダメなんでしょうか?
と言うか、そもそも当該サーバからの操作はできないのですかね?


余談:
>漆で耳の穴がかぶれたら大変なことになりそうですね。
って、塗った後のモノはかぶれないんですかね。
多分、大丈夫かと思われます。
漆にアレルギーがある人は危ないかも知れませんが、家具に使われているくらいですから問題ないんではないでしょうか?

おぉー!
千葉に来られてたんですか?
私は昨日、日曜日に千葉に出かけておりました。
知り合いの家に遊びに行ったのですが、東京駅でお土産に東京ばななを買って行こうとしたら、くろべぇの種類がめちゃくちゃ増えてました。
バームクーヘンにレーズンサンドと他諸々、どれにしようか悩んだ挙句、普通の東京ばななを買いました。
オーソドックスなやつが一番うまいですよね。

残業しても、仕事を楽しめるのはとても良い事だと思います、素晴らしいです。
私はトラックドライバーなのですが、今時季は精魂尽き果てて、仕事自体を辞めたくなります。(笑
確かに、「車ならこんなに時間かからないのに…」って事は多々ありますね。
でも、免許が取れる様になるまでのほんの少しの時間ですから頑張りましょう。

>「ピアノの森」も「のだめカンタービレ」も、うちの彼女が知ってました。
流石、女の子ですね。
まぁ、30越えた大の男(私)が女性誌【KISS】を立ち読みしているのはどうかと思いますが、意外にレディコミって面白いんですよね。
「のだめ」を描いてる二ノ宮さんの漫画はどれも面白いですね。
大笑いする感じではないんですけど、クスクス笑えます。
「のだめ」はマジでお薦めっス!年明けに新春スペシャルでドラマやるみたいですしね。

>住之江は大阪市の南の方にあるので、新大阪からは結構離れてます。
そうなんですか。
結構乗り換えるんですね。
私が大阪に行きたい理由の1つで「競艇のメッカ」という事があるんですが、仕事休めないし、弾丸日帰りツアーを目論んでいるんです。
ほぼ毎年住之江競艇場で、年末に競艇の超BIGレース「賞金王決定戦」というのが開催されるのですが、大阪の競艇ファンはアツいですから、一緒に混じってめっちゃ大騒ぎしたいんですよ。
移動の事とか考えると1泊くらいはした方が良さそうですね。
>あまりギャンブルはしないので、競馬・競輪・競艇わからないですけど、
ようするにオーバルサーキットですよね。面白そうですよね。
めっちゃ面白いです。
競輪・オートは間違いなくオーバルコースのレースです。
競馬は距離によっては1周しませんし直線だけのレースもありますから何とも言い難いですね。
競艇は水の上という事もあり、ぐるぐる回るんですけど上記3種とは全く別物で、舟を車で言うところのドリフトさせながら旋回します。
早さだけを追求した車・バイクとかってかなりカッコイイものがありますけど、競艇も然りです。
げんき様を誘い込むわけではありませんけど、大阪の競艇選手はサービス精神も旺盛で個性的な選手が揃ってますから、1度遊びに行かれてみては如何ですか?
大阪支部には「松井繁・田中信一郎・湯川浩二」と他にも強い選手は沢山いるのですが、この3人を覚えておけば、面白いレースに出会えると思います。
ちなみに今週の水曜日から福岡で賞金王決定戦が始まりますが、「松井」と「湯川」は出場すると思います。
詳しくはスポーツ新聞をご覧ください。

こんばんは。遅くなってしまいました。

本屋さんで本を写メるってのはどうなんですか?w
犯罪の香りがしますねw

rndcは使ってますが、正直これを使うと使わないでセキュリティ的にどう違うのか理解出来てません・・・

設定も、本を読みながら丸写しなのでよく覚えてないのですが、今ある設定ファイルを見る限りでは、

rndc.key
というファイルを作って、その中身が
-------------------------------------------
key "rndc-key" {
algorithm hmac-md5;
secret "ABCABCABCABCABCABCABCABCABCABCABC==";
};
-------------------------------------------
こんな感じで、named.confの中には
-------------------------------------------
controls {
inet 12.34.56.78 port 953
allow { 13.57.91.35; } keys { "rndc-key"; };
};
-------------------------------------------
こんなんが入ってて、

クライアント側のrncd.confは、
-------------------------------------------
key "rndc-key" {
algorithm hmac-md5;
secret "ABCABCABCABCABCABCABCABCABCABCABC==";
};

options {
default-key "rndc-key";
default-server 12.34.56.78;
default-port 953;
};
-------------------------------------------
こんなんになってますね。
まぁ俺の場合はLAN内なんでこんだけですけど、
グローバルIP指定でやる場合はルータの953番通さんといかんのでしょうね。

余談:
漆で耳の穴がかぶれたら大変なことになりそうですね。
って、塗った後のモノはかぶれないんですかね。

水木金で千葉に出張に行ってきました。
帰りに成田エクスプレスから新幹線に乗り換える際、
ギリギリの時間の指定券を買ってたので微妙だったのですが、東京バナナを買いましたw
やっぱうまいです。

なぜ俺がこれをやらなきゃならんのか理解出来ん残業なのですが、
意外と勉強になってるので楽しくやってます。
しかし帰りが遅くなるのがつらいですね。
通勤ラッシュ時間だと大きくは変わらないですが、夜遅くなると
「車だったらすぐ家に着くのに・・・」
と、どうしても考えてしまいます。

「ピアノの森」も「のだめカンタービレ」も、うちの彼女が知ってました。

のだめカンタービレを書いた人の他の漫画を少し読んだことがあります。
「飲みに行こう」とかいうやつです。めっちゃ面白かったです。

住之江は大阪市の南の方にあるので、新大阪からは結構離れてます。
けど、新大阪からですと地下鉄御堂筋線に乗って大国町まで行って、
大国町で四つ橋線に乗り換えて住之江公園まで行けば、トータル1時間はかからないと思います。
4~50分ぐらいですたぶん。

あまりギャンブルはしないので、競馬・競輪・競艇わからないですけど、
ようするにオーバルサーキットですよね。面白そうですよね。

oreoyaji:

げんき様こんにちは。

げんき様の仰っておりました
《dig》《nslookup》等で確認してみたところ、やはり予定通りと言いますか更新出来ておりませんでした。
ネームサーバの「ドメイン無いよ!」「権限無いから!」の声に追い込まれながらも何とか昨晩更新に成功致しました。
げんき様が書かれた既存のサブドメインを取得し更新することは出来たのですが、新たにドメインをレジストラで取得してnamed.confに追加すると更新出来ず、頭の弱い私は本屋さんでオライリーのバインド書を写メって何とか解決に至りました。
未だrndcは解決に至ってないんですけどね…
aclの書き方なのか?はたまたkey辺りの書き方なのか?BINDにする設定の多さにかるく頭がキマッてしまいそうです(笑
げんき様はrndcは使っていますか?
もし使われておられるなら、どんなところが便利なのでしょう?
私としては再起動くらいしか使わないと思うのですが…。

余談:
確かにココアもチョコも同じカカオから出来てますね。
味が似たようになるのもうなずけます。

黒い耳かきは浅草で売ってました。
何やらエラい高かったんですけど、「漆黒」ってかいてありましたよ。
やっぱ塗りが違うんですかね?あんまり滑ると耳垢が取れないような気もしますが、耳の中は傷つけないんでしょうね。

年末の残業…大変そうですね。
体調を崩さないように頑張ってください。
私は既に2度風邪をひきましたが何とか仕事は休まずに済んでいます。
インフルエンザも流行ってますし、気をつけた方がいいですよ。
「ピアノの森」は週刊モーニングで連載していたはずです。アニメ化もされています。確か上戸彩が声優として出演?している筈です。
私個人としては、音楽系漫画は「BECK」や「デトロイトメタルシティ」等が特に好きです。
げんき様は、「のだめカンタービレ」とか好きかもしれませんね。

私、競艇が大好物なのですけど、「住之江競艇場」というところはご存知ですか?
新大阪からだと遠いんですかね?

ありがとうございます。
参考にしていただけるのは単純に嬉しいです。

しかし、完全な素人が基本を何も知らずにただ動くだけのスクリプトを書いたものですから、
俺には全然わからないダメな点があるやもしれませんので、
じっくり動作検証してからお使いいただけるようお願いします。

自前のDDNSサーバーを立ち上げようと思って、ここにいきつきました。探していた内容がここにありました。私の場合は、自宅ではなく、借りているサーバー上で展開するつもりです。ユーザーは数名程度でしょうが、さっきスクリプト拝見した限りでは、取得させたくないサブドメイン指定などがあったり、細やかなソースと拝見しました。正月に試行予定です。

こんにちは。
updateが成功してるかどうかは、
nslookupコマンドや、digコマンドで確認すればいかと思います。

SElinuxは使ってないです。
なんか煩わしそうなイメージで逃避してます。
rootは10桁以上のランダムなパスを記憶だけで保持してますので、
あとは外部からSSH接続するときとかはsudo使ってれば別にいいかなぁとか思ってますが、
やっぱ甘いんですかねこれは。

余談:
ココアとチョコってどっちもカカオなんじゃないんですかね?
よく知らないですけど、たぶん一緒ですw

黒い肉まんとかは別にどうでもいいですけど、トイレットペーパーは考え物ですね。
きれいになったかどうか分からんのちゃいますかね・・・

黒い耳かきは気持ちいいです。
「取れたぞー!」ってのが視覚的によく伝わってきます。

『BOSA』
探してみますw

『ピアノの森』
聞いたこと無いですね。
年末の毎日残業and忘年会が終わったら会社帰りに立ち読み試みてみます^^

oreoyaji:

どもども(^^)ゞ
追伸です。

漫画で『ピアノの森』というのがあるのですが、ご存知ですか?
お勧めです。

oreoyaji:

げんき様こんばんは。

すみません…『updated.』です(^^;)
なるほどぉ~確認してはいないんですか。
しかし、ジャーナルファイルが生成されていれば問題ないですよね?
当WEBサーバのアドレスとは違うアドレスを当WEBサーバに更新したら、繋がらなくなったのでイケてると思うんですが。

げんき様もpostfixをお使いなんですね。
ご紹介いただいたサイト参考にさせていただきます。
有難うございますm(__)m
SElinuxとか使い方がわからないんで、どーしたもんかと悩んでるんですが、げんき様は既にお使いですか?


余談:
くろべぇご存知でしたか。
ココア味とかいって、いつ味わってもチョコにしか感じないのは私だけでしょうか?まぁ似たようなものですけど。

確かに最近は黒い商品がやたらと目に付きますね。
黒いトイレットペーパーとか肉まんとかありますね。

ピアノがお好きで…、確かにピアノ系ならショパンですね。バッハ=フーガは間違いないですね。
確かフーガって完成してないんじゃなかったでしたっけ?

ボサノバ調カバーアルバムのタイトルは確か『BOSA』ボサだったと思います。
そのまんまですよねぇ~。

こんにちは。

ユーザ登録はうまいこといったみたいですね。
よかったです。

「update.」と表示されますか?
「Updated.」ではなくてですか?
Updatedなら、元のスクリプトの198行目あたりの、
echo "Updated.";
ではないでしょうか。
これは実はユーザ名とパスが正しければそう表示されるだけで、実際にレコードが書き換えられたかどうかの確認はしていません。
nsupdateコマンドの戻り値で判断してもっと正確なメッセージを出すといいかもしれません。
わざわざこんな文字列を出力しているのは、DiCEの判断材料にするためです。

スパム配信については、俺はMTAにPostfixを使ってますので、
http://www.miloweb.net/mail.html
http://www.jitaku-server.net/postfix_advanced.html
このへんを参考に設定しました。

余談:
黒い東京ばなな、食べたことあります。
くろべえとかなんとか・・・?
いろいろ黒いものが売ってるんですよねw

ロマン派といっても幅広いようですが、ピアノ曲が好きです。
バッハと聞くと、小フーガ ト短調が思い出されますね^^;

ボサノバ調にしたカバーアルバムいいですねそれ!
ぜひ聞いてみたいです!

oreoyaji:

げんき様こんばんは。
返信が遅くなりまして大変申し訳ありません。

げんき様のご教授のかいあり、なんとかアップデートスクリプトまで手を付けるまでところまでになりました。
有難うございます。

そこで質問なのですが、アップデートスクリプト実行後に『update.』と表示されるのですが、これで正しいのでしょうか?

それと、どうやらメールサーバーがスパム配信をしている様なのですが、除去出来るソフトやオンライン除去などご存知でしたら、教えて頂けないのでしょうか。

余談:
東京ばなながお好きなんですね。
黒い東京ばなながあるのはご存知ですか?

ロマン派とはクラッシックの事だったんですね。
私はバッハはよく聴きます。
室内楽というか、ゴシックの厳かな感じが好きで…
ガーシュインとか明るいのも聴きます。
最近では、テルミンの為の楽曲が気になっているのですが、なかなかありません。

ボサノバはカバー曲とかをボサノバ調にしたアルバムとか出てますよ。
聴き易いです。

こんにちは。

週末忙しいのは仕事じゃなくてプライベートですw

IP2本は別々に2つ契約すればいけるんじゃないでしょうか。
そしてマルチセッションで両方同じ場所から接続するのです。
まぁ、最終的にはニフティをひとつ継続したまま、もう一本を転送量制限あっても安いところを選んで、安いほうでDNSサーバなど転送量の少ないサービスのみを動かす方向で行くんじゃないかと思います。

型式の末尾の「R」って見たこと無いので知りませんでした。
型式の末尾といえば、「改」しか思い浮かばないですねw


カーネルの再構築は、クリーンアップとは違いますね。
俺もよくわからないんですけど、イメージとしてはサービスパックを当てるような感じでしょうか?
本当に分からないのですけど、OSがやらないといけないことと、アプリで出来ることの区別があるようで、OSがやるべきことで標準で入ってないものを使いたいときに、そのパッチをあててカーネルをビルドしなおす必要があるみたいです。


依存関係を無視して手動でpppをインストールしたら、ネットに繋がらなくなって泣きそうになりました。
ところが発狂寸前でログ読んで判明したことは、ごちゃごちゃ設定ファイル書き換えてる間にISPのパスワードを間違えてただけでした。

質問:
メール送信失敗のメッセージについてですが、
if(!ereg("^220",$result))
とかの条件が残ってるんじゃないでしょうか?
smtpサーバのレスポンスに200番台のコードが返ってこなかったら失敗したと判断している部分ですので、
mb_send_mailには当てはまりません。
$result = mb_send_mail(*****);
として、
if(!$result){ die("失敗"); }
とすればいけるような気がします。
ただし、mb_send_mailは相手のメールアドレスが存在しなかろうがサーバが存在しなかろうがtrueを返すので、ここの判定はあまり意味は無いかもしれません。

テンポラリファイルを読んでいるかどうか確認するためには、パスワード認証をする行付近で、中身を表示してみて確認してはどうでしょうか?

具体的には、
if($password != $list['password']){
echo ってとこを、
if($password != $list['password']){
var_dump($password);
var_dump($list['password'];
echo のようにして、$passwordの中身が正しいか、テンポラリファイルの中身を読めているか等の確認が出来ると思います。

管理者宛に同じメールを送信するなら、bccで管理者のアドレスを指定すればいいのではないでしょうか。
fromを指定したところ、4番目の引数を、
from:xxx@xxx\nbcc:yyy@yyy
とすればよいかと思います。
yyy@yyyを管理者のアドレスにですね。


余談:
東京には東京ばなながありますよね。
東京には行ったことないですけど、東京に出張に行った人とか、東京営業所の人がよく買ってきてくれます。
あれうまいです。すごい好きです。


ロマン派ってのは、クラッシックです。
ショパンとかシューマンとか、そーゆーやつですw

10年ぐらい前でしょうか、初代プレステのビートマニアが流行ったときに、たしかボサノバってすげー良い感じだなと思った記憶があります。
しかしやはり音楽に疎く、あまり執着の無い俺は特にそれ以上調べも探しもせずに知らないジャンルのまま今まで来てます・・・

oreoyaji:

げんき様おはようございます。

お仕事が忙しい中ご返信くださり有難うございます。
げんき様にお時間の余裕がある時で結構ですので、この無智なるoreoyajiにお付き合い頂けたらと存じます。

さて、
プロバイダの話題ですが、IP1本ずつを同一のプロバイダから借りるのは難しいのではないでしょうか?
IPアドレスを1本ずつ2つのプロバイダから借りるのはどうでしょう?
ルータでマルチなんとかって設定をすれば複数のプロバイダに同時接続が出来るみたいです。

>車や単車のRって何ですか?俺はそっちを知らないですw
車や単車の形式・名前の先頭や末尾にRという文字があったりしますよね?それが全てという訳ではないのですが、物によってRはリファレンスという意味合いを持ちます。
標準機・標準規格みたいな事です。
そのまんまですね。申し訳ありません。

makepw.phpのインクルード行を削除するとメールが送れなくなってしまうので、別ファイルで保存して
使用させて頂こうと思います。

mxレコードの件ありがとうございます。
了解しました。
まずは更新スクリプトを別に設けて試してみたいと思います。

カーネルの再構築とはウィンドウズのディスククリーンナップみたいなものなんですか?
linuxの依存関係の問題はよく目にしますね。
私は読んでも解らないので、これは大丈夫ってなっているものしか使わなかったりします。
自分で修復が出来なくなるのが怖いので。
とか言いながら、dovecotなるPOPのサーバを導入したらメールがPOSTFIX供に受信出来なくなってしまいました。(泣
ドベコのアホー!と叫びたい気分です。
多分、私の設定間違いなのでしょうけど…。


質問:
テストで携帯にメールを送信するのですが、『メール送信失敗』と表示されるのですが、携帯にメールが送られてきます。
正しく送信出来てないんでしょうか?

送られてきたメールのURLをクリックし、登録をしようとするとパスワードが違いますと表示され、登録出来ません。
temporary内に生成されたファイルをエディタで開くと送信時入力した内容が書かれているのですが、ファイルを読みに行ってないのでしょうか?

登録を管理者に通知する場合、例えばmb_send_mail時に登録者同様の内容を管理者にメールで配送する場合はどのようなオプション・行を追加すればよいのでしょうか?

幾度も恐れ入りますが、ご教示を宜しくお願い致します。


余談:
東京はいろいろな地域のお店が混在しているので、名物や特化した物が無くて寂しいところです。
お洒落なお店やブームの発信地的なところはありますけど、凄い短いスパンで街の風景が変わったりするんで、いざ行こうとすると無くなってたりします。
逆に地元だと、いつでも行ける感があって行かない場所ってありますよね(笑

たこ焼き安いですね(^^)
げんき様の言う、田舎にあるようなお店のたこ焼きが食べてみたいんです。
こっちには、京たこ・銀たこなどがありますけど、やれトッピングだマヨネーズだなどと、何かのせなきゃ喰えないんか!と言いたくなるものばかりで…。
しかも高い!600円はとりますからね。
トッピング付けたらそこら辺の定食並の値段ですよ。

たぬきときつねが地域によって違うとは知りませんでした。
関東と関西で違うのは有名な話ですけど、京都はあんかけなんですね。
ますます食べてみたくなりました。

確かに私もPOPと離れたジャンルの音楽が好きで、メタルなんかは特に暴力的・社会批判と反骨精神剥き出しの音楽ですからね。
凄く気になったのでお伺いしたいのですが、ロマン派とはどういった感じの音楽なのですか?
イメージではボサノバ系の優しい感じやオーケストラを取り入れた壮大な感じをイメージしているのですが。
LOVE PSYCHEDELICOいいですね。
FUNKとSOULが上手くミックスされた感じでノリノリ(死語)ですね。
林檎は一度舞台裏から見たことがありますけど、想像以上に綺麗な人でした。
東京事変になってからは更にROCK色が強くなっていて面白いですよ。
『さくらん』って映画の主題歌になっていたような気がします。

14・5年前になりますが、長渕剛のドラマでRUNというドラマがありまして、そのドラマにゲンちゃんとう役で出演していた山梨鐐平(やまなしりょうへい)さんがめっちゃいい歌を歌いますよ。
ボサ・バラード系ですが、小野リサさん何かをイメージして頂けるとわかりやすいかもしれません。

話を広げすぎて申し訳ありません。

こんばんは。遅くなってすみません。週末は何かと多忙でして、土曜の夜まではあんまり時間を作れません。

車や単車のRって何ですか?俺はそっちを知らないですw


8個もIPアドレスいらないので、1IPの契約を二つとか思ってたんですが、どうも速度や転送量制限が厳しそうです。
今niftyで月額1万近く払ってるんですが、速度もまぁまぁ、転送量制限もなく満足しています。
ただ、逆引きが使えないのがうまくないので、乗り換えついでに、2本IPアドレスがあればDNSのプライマリ・セカンダリともに自前に出来て逆引きも出来たら素敵かなと思ったのですが、どうやらそんな甘いところはなさそうです。

ランダム文字列生成スクリプトは、コピペでもちろん使えますけど、よく使うなら別ファイルで保存してincludeしてもいいですけど、今回しか使わないなら同じファイルの中に関数をペーストするだけでいいと思います。


余談:
高級なのかどうかしりませんけど、高級ってイメージで食べようと思ったこともないです@ふぐ。
そういや、つぼらやでしたっけ?なんかふぐのハリボテのある店がありますね。通天閣のあたりに。
食ったことないですわ。
それどころか、かに道楽やら食い倒れ人形の店やら、あの有名なでっかいハリボテのある店は一つも入ったことないです。あんまり大阪を満喫してない大阪人なんでしょうね俺は。

粉もんはウマいと思います。
タコヤキは大阪が一番安くてうまいと思います。
さすがに都会のほうに行くとそこそこの値段しますが、未だにちょっと田舎に行けば、6個100円です。
こーゆーのがうまいんです。
粉が少なければ少ないほど、外がパリっと中がトロっとなるわけですね。つまり、薄い方がうまい。安い方がうまい。となるわけです。たぶん。

きつねとたぬきの意味合いは地域によっていろいろあるんでしょうね。
大阪ではきつね=あげさん入りうどん・たぬき=あげさん入りそばが一般的だと思います。
5年ほど長野に住んでましたが、きつねは同じで、たぬきは天かすの入ったそばだったんじゃないでしょうか。
それとも、そばにあげさんを入れたらきつねそばとでも言うんでしょうかね。
京都に行くとまた違って、たぬきというと餡かけになるみたいですね。冬の底冷えする地域がらだと京大出身の先生が言ってました。
しかし最初に、「たぬき」と注文して「うどんですか?そばですか?」と聞かれたときは、アホかと思ったとも言ってましたねその先生は。

俺も実は、音楽で好きなジャンルは?と聞かれてまず思いつくのは「ロマン派」が思い浮かぶような偏りを持った人なので、おそらくoreoyajiさんとは全然方向性の違う趣味なんでしょうけど、とりあえずふつうのポップとは離れたところにいるところは共通点ではないでしょうか笑
音楽聞きながらモノを考えられない人なのでパソコンに向かってるときは無音でして、車でもあまり音楽をかける習慣もなく滅多に音楽を聴かないんですが、昔よく聞いていたところでいくと、LOVE PSYCHEDELICOとか椎名林檎とかでしょうか。
あんまバラードって感じじゃないですかねw

カーネル再構築。俺もよく分からず、そのへんでサイトに書いてあるとおりにやってるだけです。終わる気配が無かったですけど、一晩寝て起きたら終わってました。
うまくいったのかどうかも分かりませんw

実は、インターネットVPNを構築したいと思って試行錯誤中なのですが、どこのサイトにも書いてない依存関係どーのこーのとかのエラーが出て困り果てているところです。


MXレコードに関してですが、実はDNSがいまいちよく分かってなくて、MXレコードのことはまったく分かってないので、何とも分からないのですが、とりあえずnsupdateで対話式で更新するときと同じ書式で更新用ファイルを作ってやって更新すればいけると思います。
アカウントごとにMXレコードの設定もさせたいなら、データベースのテーブルにMXレコード用のアドレスを書く欄を設けて、そこにデータを保存するようにすることと、DiCEのプラグインでMXレコードを更新できるようなオプションを追加すること、更新用PHPスクリプトで、MXレコードの設定を受信するような項目を追加することなので対応可能と思われます。

oreoyaji:

げんき様こんにちは。

更新スクリプトですが、mxレコードの更新を追加するにはどうすればよいでしょうか?
お疲れのところ大変恐縮ですが、宜しくお願い致します。

oreoyaji:

げんき様こんにちは。
多分、今時分はお仕事中のことと思いますが、お疲れ様です。

ポケットリファレンスとは、そうゆう用途で使うものだったのですね。
中身も見ずに、車や単車のRと同じと思ってました。
あると便利そうなので、探して買ってみます。

プロバイダのお話ですが、私の契約しているプロバイダは、契約者の住まいが関東地方である事が条件のプロバイダです。
調べた訳ではないですが、関西方面にも似たような固定IPをくれるプロバイダは存在すると思います。
ってゆーか、プロバイダ料金は関東より関西の方が安い様に思います。
ADSLや光、マンションタイプやファミリーと料金多形は違いますが、1IPあたり大体平均して、900円1200円位が妥当な料金ではないでしょうか?
只、それに付加価値(即日発行)等がつけばそれなりに値段が上がるようです。
インターリンクやアサヒネットが有名ですが、探せば
よく聞く名前ではSAKURAインターネットという名前を耳にしますね。
多分使われているとは思いますが、簡単な比較はここで出来ますよ。↓

固定IPアドレス 料金比較・検索
あと、乗り換えだと2IPを発行してくれるところはないと思うので、8か16IPになると思います。


げんき様のランダムな文字列を生成で公開なさっているスクリプトをコピペして、名前をmakepw.phpで保存しセットすれば、当方でも使える様になりますか?

keyファイル件、了解しました。
やってみます。


余談:
以前TVで、大阪はふぐが安い!みたいな事をやっていたんで、てっきり大阪の人は頻繁に食べられているんだろうなと思ってましたが、やっぱり高級なんですね。
うどん、粉もんは最高に旨いでしょうね!
前に、フラッと石川、福井に遊びに出かけた時、駅で食べたうどんが妙に美味しくて、店のおばちゃんに、『旨いね!』って聞くとこっち方は関西の味に似ているとのことで、関西の味が一種の憧れみたいになってるんですよ。
そういえば、たぬきときつねの意味合いも違うんですよね。

いえいえ、音楽に疎いという事は音楽の趣味を広げられるという事ですから、良い事だと思いますよ。
私は昔バンドを組んでいたりしたので、ジャンルに偏って詳しかったりしますが、妙な先入観をもって聴いたりしてしまう事があるので、自分にイラッとくる事もちらほら御座います。
そんな時aikoを聴いて原点に戻るんですねぇ。
とても癒されます。
メタルと言うのはヘヴィメタルやデスメタルの様なジャンルの事ですんで、お気になさらないでください。
"愛の病"いいですよね。
アップテンポで聞き易い感じで。
『不安で眠れない夜、そばにいてください。』なんて言われた事1度もないですよ(泣
言われてみたい言葉Top3に入りますね。
ゆったりとは、中島美嘉な感じですか?

カーネル再構築とは凄いですね。
と、言いながらカーネルを再構築するという事が一体どんな作業をするものなのか、全く解っていませんが、推測で…、linuxのコアな部分を弄るって事ですよね?
linux=カーネルの様な事を聞いたことがある?本屋で見かけた様な気がするんですけど、難しそうな事ですよね。
終わる気配がないとは…。
がんばって下さい!終わりは必ずやって来ます!

Keyファイルについてですが、俺もよく分かりません。
おそらく、パーミッションの設定にさえ気をつければどこに置いてもいいものだと思います。

BINDに読ませるキーは、直接named.confに書いてもいいし、/var/named/等のzoneファイルと同じ場所においてnamed.confでインクルードしてもいいと思います。

更新のときにクライアントが使うキーは、apacheで読めるようにしないといけないのでセキュリティ的にマズーですので、WEB経由ではアクセスできない場所、ドキュメントルートより上に置いて、フルパスで指定するのが良いでしょう。
もしくは、このスクリプトから更新することを前提として、スクリプトを動かすWEBサーバからのみ更新許可という方法もいいかもしれません。


てっちりなんて高級なモノは食べた記憶がありませんが、うどんとかお好み焼きとか、うまいです。

ほーほー。メタルってのはよく分からないですねぇごめんなさい・・・
基本的に音楽には疎いのです。
しかしロージーは好きですね。基本的に女の子の曲はゆったりした曲を聴きたいですけど、aikoでアップテンポといくと、愛の病なんか好きですけど、これってアップテンポじゃないですかねw

現在、初めてのカーネル再構築中です。うまいこといくのでしょうか。とりあえず終わる気配がないです。眠いです。

つかぬ事をお伺いしますが、oreoyajiさんはISPはどこをお使いですか?東京限定とかのやつですか?俺も8本とまではいらないですけど、もう一本固定IPが欲しくて安いとこ探してるんです。

おはようございます。

ごめんなさい、ランダム文字列を生成するスクリプトを呼び出していました。

include "makepw.php";

という行がありますが、これは俺の自作関数で、ランダムな文字列を生成するものです。

PHPでランダムな文字列を作る
http://blog.genkikko.net/2007/08/php.php
で紹介しているスクリプトのプロトタイプのようなものなので、この関数を利用して、
makepw(40);
のところを、
rand_str(40);
と変更してください。

引数の順序は覚える必要はありません。
よく使うものは自然と覚えますが、基本的には使う都度調べれば良いのではないかと思います。
コマンド名でググるとマニュアルが出てきます。
http://jp2.php.net/mb_send_mail

俺は、紙媒体のほうが調べやすいので、PHPポケットリファレンス
http://www.amazon.co.jp/PHP%E3%83%9D%E3%82%B1%E3%83%83%E3%83%88%E3%83%AA%E3%83%95%E3%82%A1%E3%83%AC%E3%83%B3%E3%82%B9-POCKET-REFERENCE-%E5%A4%A7%E5%9E%A3-%E9%9D%96%E7%94%B7/dp/4774116688
という本を使っています。俺の持ってるのはPHP4までしか載ってないので、こういうののPHP5版が一冊あると便利かもしれません。

これから仕事なので、続きはまた後ほど。

oreoyaji:

携帯から、小分け送信で申し訳ありません。


暗号化スクリプトの作成手順等、参考URLなどありましたら、ご教示頂けると助かります。

スクリプトの話とは違うのですが、named接続等に使うKEYファイルの置き場所なのですが、イマイチKEYファイルの使い方が理解出来なくて…、rndcを使用する目的では作成したのですが、理由もわからずConfファイルと同ディレクトリに置いてあります。
同様に、設定ファイルのあるディレクトリで作成し、同ディレクトリに置くものなのでしょうか?

宜しくお願いします。

余談:確かに拘りが無ければ、安くて旨いものは出来ないですね。
てっちり食べてみたいです。

げんき様もaikoがお嫌いでない様で嬉しいです。
三国方面出身とは、そいえば、三国駅とか何とかなタイトルの曲がありましたね。
私の好きな曲は、恋愛ジャンキーとかロージー等、割とPOPでUPテンポな曲が好きです。普段はメタル一本なもんで、何でaiko?ってよく言われます(笑

oreoyaji:

げんき様お早う御座います。

申し訳ありません。
話が途中で切れてますね。
携帯からYahoo!mobileのブラウザで送信したのですが、どうやら5・600文字しか送信出来ないようです。

なる程、単純に言えば『書き順』という事ですね。
この順序を覚えるのは大変そうですね。覚えられるかな?いや、覚えないといけないですね(笑

さて、切れた話の続きなのですが、temporary内にファイルが作成されている様子がないのです。
パーミッションは777なのですが、所有者等はRootでよいのでしょうか?
ファイルが作成されない原因と思われる事などありましたらご教示願えますでしょうか。

暗号化するスクリプトは別ファイルで置かれているのですか?

こんばんわ。

鼻炎はきついですね。
花粉症の人ってすげー大変そうに言うけど、あんなもん季節限定されてるから気楽なもんだと思います。
俺はその時々によって、右が詰まったり左が詰まったり両方詰まったりで、詰まった方は息を吸えないから鼻水が垂れてきて大変です。満員電車では困りますね。

引数ってのは、簡単に言うと関数に与えてやるデータです。
つまり、先に書いた
mb_send_mail($mailaddress,$subject,$body,"info@exsample.com","-f error@exsample.com");
で言いますと、
$mailaddressが1番目、$subjectが2番目ということで、-fオプションは5番目ってことですね。
関数内部で、何番目の引数をどういう風に扱うというのが決まっているので、この順序が大切です。

たとえば、
function hikizan($a,$b){
return $a-$b;
}
という短い関数を作るとします。
この場合、一つめの引数から二つめの引数を引いた値を返しますので、
hikizan(5,2);の戻り値は3になりますし、
hikizan(2,5);の戻り値は-3になります。

from:が抜けていましたね。すみません。この4番目の引数は、宛先以外のヘッダを記述するところなので、たぶんここでccやbccなんかも指定できると思います。

>"-f"を付けたのは何かエラー等があったらメールが返ってくるかな?と期待して付けたのですが、用途が違うようで…。
いや、もしかしたらそういうものかもしれないです。確認してません。
ただ、man sendmailによると、
-f sender
エンベロープの送信者アドレスをセットします。これはメッセージが Errors-To: メッセージヘッダを含まない場合に配送の問題が送られる場所です。
と出てきます。
-f sender
と書いているので、-fの後ろに何かしらを指定しなければならないという意味だと思われます。

>./temporary/直下に作られた一時ファイルは自動的に削除されませんよね?
自動的には削除されませんが、本登録に成功した後削除するようにしています。
PHPのunlink()というのがファイルを削除する関数ですね。
ただし、仮登録で放置されたものはファイルが残ります。これは、別な方法で削除するしか無いんじゃないかと思いまして、そういったものを作って紹介しているのが、
http://blog.genkikko.net/2007/11/php_1.php
これになります。
ただ、最後に書いてますが、扱いを間違えるとすごく危険なので気をつけてください。
下手な場所において動作確認するとめちゃめちゃ危ないです。

>ファイルが作成
ん・・・?何が起こったんですか?笑

ではまたー。

oreoyaji:

げんき様こんばんわ(^O^)/

鼻炎は軽くみられがちですが、本当キツいですよね。
私の場合は鼻の骨自体も曲がってる為、息すると左の穴が笛みたいにピーピー鳴るんですよ。
ヘッドホンステレオとかで音楽聴きながら電車など乗れないですよ。恥ずかしくて(^_^;)

さて、
げんき様すみません、5番目の引数とは何でしょうか?
ググってみても、4番目だ5番目だと似たような事ばかりで、何番というのが何なのかが出てなくて。
初歩的な質問で大変申し訳ありません。げんき様のご教示下さった文言をそのまま書けばいい事なのですが、それでは勉強にならないと思いまして。

重ねて申し訳ありません。"-f"を付けたのは何かエラー等があったらメールが返ってくるかな?と期待して付けたのですが、用途が違うようで…。
シッタカはしないので鼻で笑って見てやって下さい。(ペコ

"info@xxx.com"としましたが、送信者がApachiからになってしまったので、From:を付け足したら上手く表示されました。
有難うございます。
Mime-Versionなどの表示は正しく設定されれば消えるようです。
当環境でも表示されなくなりました。

./temporary/直下に作られた一時ファイルは自動的に削除されませんよね?
ファイルが作成

こんばんは。
鼻炎はつらいですね。俺も鼻炎持ちです。猫アレルギーなのですが、うちには猫がいます。
世界一可愛いのでつい触ってしまいますが、直後に後悔します。

>mb_language('Ja'); mb_send_mail($mailaddress,$subject,$body,"-f");
これに関してですが、まず、apacheから来るのは正しいかと思います。
別のアドレスからの送信にしたい場合は、
mb_send_mail($mailaddress,$subject,$body,"info@exsample.com");
とすればよいと思います。
"-f"というのは、エラー返送先を指定するsendmailのオプションだと思いますが、これは5番目の引数に取らないといけません。
さらに、
sendmail -f error@exsample.com
というような使い方をするものなので、やるとしたら、
mb_send_mail($mailaddress,$subject,$body,"info@exsample.com","-f error@exsample.com");
こうだと思います。

>mb_language('ja);
この行は必要でしょうか?php.iniで
mbstring.language = Japanese
の行があれば不要だと思います。

>Mime-Version,Content-type,charset,Content-transfer-Encoding
これはちょっと分からないですね。再現できせん。
1行だけでメールを送る先のサンプルスクリプトでも同じものが出ますか?
そうでなければ、メール送信する段階での各変数の中身を確認してみてください。
mb_send_mailをする行の上か下あたりに、
var_dump($subject);
var_dump($body);
などの行を書いて実行すればどこかに表示されます。

エラー表示に関しては、俺が自分でSMTPを書いたので不安だったから表示しただけです。
mb_send_mailで送信すれば大丈夫だろうと思いますし、mb_send_mailは存在しないメールサーバに送信してもtrueを返すみたいなので、エラー表示しても意味ないかもしれません。
それより、さっきのsendmailの-fオプションで指定したアドレスに返ってくるメールでエラーを確認したほうがいいかもしれません。

>私が、何か書き足したりして、実行すると何故画面が真っ白けになるのでしょう。(泣
>phpって難解ですね。
php.iniに
display_errors = Off
という行があれば、何か文法的に間違ったことを書き足すと真っ白になります。
これをOnにしてやればどういったエラーか教えてくれますので、間違いを見つけやすいですが、運営中のサーバでこの設定にすると、今動いてるページにもNoticeなどが表示される場合があるので気をつけてください。

./temporary/$random";
おっしゃるとおり、一時ファイルを置くためのディレクトリです。場所は、「./」として指定していますので、このPHPファイルと同じ場所に作ります。そういえばこれはWEBでアクセス出来ない場所に置いて、その場所を指定するように書き直した方がいいかもしれません。

食べ物がうまいというのは間違いないと思います。こだわるからでしょうか。
店員の対応・サービスもいいです。人なつっこい性質のせいでしょうか。
そんなに全国を転々としたわけではないので比較対象が少ないですが、大阪のサービスを当然と思って地方に出かけると、ムッとすることが多いように思います。

日本一長い商店街は天神橋筋商店街ですね。俺は商店街には用がないので行ったことないですけど・・・と書きつつ調べてみたら、何回も行ったことあります。よく仕事の後に彼女と一杯やりに行くとこが、実はその商店街の一部のようです。天神橋筋四番街というところ。あぁ。これ。めっちゃ長いですね。知りませんでした。

aikoは三国出身とかなんとか。
新大阪から御堂筋線でもう少し北に行ったところですね。
大阪の中でもかなり北の方で、俺はかなり南の方なので、文化も雰囲気も方言も結構違うかんじですね。
けどaikoの歌結構好きです。
誰にでも経験ありそうな切ない感じがいいです。
特にこれっていうと、「恋人」と「アスパラ」が好きです。

oreoyaji:

げんき様こんにちわ。

ご心配していただいて有難うございます。
幸い、風邪は体した事はないのですが、鼻炎と相まって鼻で息が出来ない状態です。
お陰で、唇がめっちゃ乾きます。(笑

お世話になりっぱなしで、大変申し訳ありません。
げんき様のご指示にあったスクリプトを作成し、送信テストを行いました。
特に問題なく携帯に送信されてきます。
それと、ネットで拾ったスクリプトでも送信テストを行いましたが、これも特に問題なく送信されてきます。

そこで、げんき様のスクリプトにある305行目を
mb_language('Ja'); mb_send_mail($mailaddress,$subject,$body,"-f");
と書き換えたら、一応送信をする事は出来ました。
しかし、何故かapacheから宛でメールが届き、内容に、
Mime-Version,Content-type,charset,Content-transfer-Encoding
等が表示されています。
sendmail・apache等のホストは正しく設定されているようなのですが、何が原因と思われますか?
げんき様の書かれたエラー表示も書き換えなければいけないのですかね?
私が、何か書き足したりして、実行すると何故画面が真っ白けになるのでしょう。(泣
phpって難解ですね。

それと283行目に./temporary/$random";とありますが、当環境にその様な名前のディレクトリを発見できなかったのですが、webを表示するディレクトリに作成すれば良いのでしょうか?
このディレクトリは、一時ファイルの置き場所なのですか?

毎度毎度、大変申し訳ありません。
宜しくお願いしますm(__)m。

余談:大阪は絶対いいと思います。まず、食べ物が旨い!本場の粉もん食べてみたです。
阪神高速も楽しいでしょうし、日本一長い商店街が有るのも大阪の方ではなかったでしたっけ?
そしてaikoの出身地!!
彼女はいい歌書きますよね。

こんにちは。体調不良ですか。体調不良なときはゆっくり休んだほうが良いですね。
そーゆーときにスクリプト書くと、変にハマるタイプミスとかして後々まで響いたりしますし笑
まぁなんにせよ、お大事にしてください。


>mb_send_mailに書き換える行は305行目あたりの$SOCKから先の箇所ですよね?
その通りです。そこからfclose($sock);までを、
mb_send_mail(あて先,タイトル,本文);
という行に置き換えれば良いと思います。
???で書いてあるところは、うちの環境のローカルアドレス等を隠したりした部分ですので、oreoyajiさんの環境に合わせて書き換えてください。

mb_send_mailがうまく動いていないことが原因なのかどうかを確認するために、

とだけ書いたphpファイルを作って実行してみてはどうでしょうか?あて先アドレスは自分の携帯アドレス等にして。

文字エンコードに関してはphp.iniでもeuc-jpをデフォルトで使うようにしているのであれば問題ないと思います。

サーバ目的で使うわけではないクライアントにグローバルIPアドレスを持たせる必要はないので、2台目のルータでプライベートIPアドレスを割り振ることには何の問題もないと思いますが、ネームサーバからクライアントにプライベートIPアドレスを割り振るためには、ネームサーバとクライアントをLANで接続しなきゃならんような気がします。
具体的には、ネームサーバにもともと複数のネットワークインタフェースがあるならそれに、もしくはネットワークカードを増設して、プライベートIPアドレスを設定して、そのインターフェイス経由でクライアントに接続してDHCPを提供してやるという形になると思います。
しかしそこまでしても結局、ゲートウェイは2台目のルータということになるので、ルータを外すことは出来ません。もしくは、DHCPを動かすサーバをルータにしてやるかですね。

>ケーブルの差し込みが4つしかない為
とありますが、これを解消するためでしたらルータを使わずともハブだけでいいと思います。
oreoyajiさんのお使いのルータを見たことも触ったこともないので絶対とは言えませんが・・・

oreoyaji:

げんき様こんばんわ。

調子は作業・体調共にすこぶる悪いです。
馬鹿は風邪ひかない筈なんですけどね?

まず、作業の進行状況は未だ登録の際のメールが送れないでおります。
sendmailのパス・送信テストも問題なく送れています。

mb_send_mailに書き換える行は305行目あたりの$SOCKから先の箇所ですよね?
上記箇所を書き換えて、()の中に$mailaddressとしたり、作成したユーザのアドレスを書いてみたりしているのですが、確認ボタンを押しても送信されません。
ネットで検索するとif文で囲んだサンプルや説明しか出ていなくて、よくわかりません。
げんき様は()の中に???と書かれていますが、mb_send_mailに書き換えて$mailaddressの宛先を取得する場合はどうすればよいでしょうか?
後、気になるのは、XOOPSというCMSはEUC-JPのエンコーディングで纏められていて、げんき様に公開していただいたスクリプトもEUCで保存し、使用しているのですが、正しく動かないのはそのあたりも関係あると思いますか?


WIN機にルータ1からルータ1のもつDHCP機能でIPを宛てることが出来るのですが、ケーブルの差し込みが4つしかない為、差し込みの1つにルータ2を接続し、WIN機他マシンを接続させて、ルータ2以降をプライベート域としたい。と思いまして、大量にPCを接続する訳ではないので、特にDHCPに拘っているということはありません。

説明不足で申し訳ありませんでした。

どうもどうも。
調子はどうですか?

ここへの書き込みは基本的にラフなメール気分でどうぞ。

PHPMyAdminてのを初めて知りました。MicrosoftAccessのようなものということでしょうか?GUIで直感的に扱えるのもおもしろいかもしれませんね。けど、プログラムで扱おうと思えばGUI的な感覚では厳しいですね。

mb_send_mailについてですが、php.iniのsendmail_pathで、MTAへのパスを指定する必要があります。
俺は書き換えた記憶はないのですが、
sendmail_path = /usr/sbin/sendmail -t -i
となっていました。
このパスが、コンソールから
which sendmail
と打ったときに出るパスと同じであるかどうか確認してください。正しければ、
ls -l /usr/sbin/sendmail
等して、apacheに実行権限があるかどうか確認してください。
問題なければ、コンソールから直接sendmailでメールが送信できるかどうかの確認もしてみてください。
sendmail xxx@xxx.xxxと打つと対話式になるので、ピリオドのみの行を打ち込めばメールが送信されます。
自分の携帯宛てに送ると動作確認がスムーズです。

プライベートアドレスでアクセス出来るならLANだと思いますが、グローバルアドレスでアクセスするなら、これはインターネット経由で他のホストに接続するのと同じなんじゃないかなと思っていますが、8IPなんて環境を持ったことがないので、詳しいことは分かりません。

BINDのviewに関してなのですが、内側のview・外側のviewに分けるというのは、先に申しました俺の環境のように、一つのグローバルIPアドレスで複数のサーバを運営しているときに、LAN内とWANで別々のアドレスを返す必要があるときに使うものです。

うちの環境で俺に関係ある部分だけ絵を描いたのですが、
http://blog.genkikko.net/img/network_genki.png
これでいくと、外側のviewではwww.genkikko.netは58.1.245.163になりますが、内側だと192.168.11.6になります。
つまりLAN内のたとえば192.168.11.3の俺の作業機から、俺のWEBサーバ上のページを見ようとすれば、58.1.245.163ではなく192.168.11.6を見に行くというわけです。

そうではなく、oreoyajiさんの環境のようにサーバごとに別々のグローバルIPアドレスを持っていて、自前のnameserverをグローバルIPアドレスで参照するような環境でしたら、そもそも内側と外側のviewに分ける必要が無いと思います。
先の書き込みで「再起問い合わせ」と誤変換していましたが、正しくは「再帰問い合わせ」です。
named.confの中に、俺の場合ですと
allow-recursion { 58.1.245.163; };
と書いていますが、ここにoreoyajiさんの持っておられるIPアドレスを書けばいいかと思います。

リモート管理用のWin機にプライベートIPアドレスを割り振るのはおかしな使い方ではないと思います。セキュリティ面から考えても、Windows機に直接グローバルIPアドレスを振るのはかなり不安がありますので。ただし、LinuxサーバにはグローバルIPアドレスしか割り振っていないということはつまり、グローバルIPアドレス経由でサーバをリモート管理しているということでしょうから、そのへんのセキュリティ管理はある程度しておきたいところです。

しかしグローバルIPアドレスしか持っていないネームサーバから、プライベートIPアドレスしか持っていないWindows機にIPアドレスを割り振るというのは今ひとつ具体的にどういった形にしたいのかが分からないです。グローバルIPアドレスをDHCPで振ろうということでしょうか?ネームサーバからIPを割り振るというのは、ネームサーバを走らせているマシン上でDHCPサーバも走らせて使うということでいいのでしょうか?
すみませんが、そのへん具体的にお願いします。

もしくは何か俺が読み間違いをしてるようでしたら、ご指摘ください。

東京みたいな都会じゃないし、かといって大自然があるわけでもないし、旅行先には微妙な街ですよ大阪は。
まぁ、人間ウォッチングは楽しめるかもしれませんけどね笑

Oreoyaji:

げんき様、こんばんわ。

返信が遅くなりまして申し訳ありません。

有難うございます。
余り堅くならず、お話し出来る様に心掛けます(^-^)。
発言や2ちゃんの書き込みとかもしたことがないので、手に汗をかきながら文書を打っている次第です。

データベースの件了解しました。
私はMySQLしか使った事がなくて、PHPMyAdminで見たままデータベースを作成していたので、postgreSQLは全く別のデータベースだと思っていました。

ご指示通りにmb_send_mailに書き直して実行してみましたが、上手くメールが送信されないので、php.iniの設定なのかな?と思うのですが、何か特別な設定とかされていますか?

本当にお恥ずかしい話ですが、ルータのLAN側に接続されていれば、全てLAN内だと思ってました。
プライベートを振った所をLAN内と言う様ですね(^o^;)言われてみればローカルエリアですもんね。
お恥ずかしい…。


BINDのVIEWですが、確かに、私も疑問に思っていたのですが、参考書籍を読みながら作っていったらresolvからEXTERNALまで同じ中身のZONE名が違うだけのファイルを読むように作っていたので、『中身が同じなら1つのファイル読ませても同じ?』的な考えでその様にしてしまいました。
当環境下では、リモート用のWINだけ何故か、ルータに更にルータを接続し、DHCPでプライベートを当てております。
何故?と聞かれても、答えられない程意味不明な設置です。自分でそうしておきながら、変な話ですが、以前は二重ルータ環境でWebを運営していたので、光に変更した際に当時の環境を再構築しようとした名残です。多分…。
しかし、そのWINに現在構築中のネームサーバからIPを振ってみたいと思い、とりあえずINTERNALにもZONEを残してあります。

『そりゃあ違うよ!こうしなきゃ。』とと思われたら、ツッコミ宜しくお願い致します。


余談:大阪楽しそうですねぇ行ってみたいです。

上のコメントの「接続語に」は、「接続後に」の間違いですすいません。

データベースの設定ですが、俺はDDNS用にddnsという名前のデータベースを作りました。
$ createdb ddns;
ですね。

そしてテーブルは、ドメイン名ごとに作っています。
現状では、genkikko.netとg-dd.netの2種類なのですが、テーブル名にハイフンやピリオドが使えなかったので、アンダーバーに変換しています。
つまり、genkikko.net用のテーブルはgenkikko_net、g-dd.net用のテーブルは、g_dd_netです。
これに対応するために、
$table = str_replace(".","_",$domain);
$table = str_replace("-","_",$table);
という行がどこかで出てくると思います。

で、テーブルの中身なのですが、
genkikko_net(
id varchar(32) not null,
password varchar(32) not null,
subdomain varchar(32) not null unique primary key,
current_ip varchar(16) not null,
update_time timestamp not null,
create_time timestamp not null,
mailaddress varchar(128) not null
);
こうしています。
上から順に、「ユーザ名・パスワード・サブドメイン・現在設定されているIPアドレス・最後に更新した日時・登録した日時・メールアドレス」となっています。ドメイン名一つ一つについてテーブルを作るので、テーブルの中身はサブドメインがユニークであれば問題ないです。つまり、同じ人が同じID・同じパスワードで複数のサブドメインを取得することも出来て、ユーザにとって管理が容易です。

1年たったらお知らせに関してですが、ご要望とあれば具体的なスクリプトを書くことも出来ますが、アイデアとしては、サブドメインごとに登録日時や最終更新日時、メールアドレスをデータベースに保存してますので、それをチェックして、指定した時刻より古ければ、登録されているメールアドレスおよびサーバ管理者にに定型文メールを送るようなスクリプトを書いて、cronで毎日実行すればいいんではないでしょうか。
1年とかのスパンでの話でしたら、そこまで細かく考える必要も無いでしょうし、1日に一回、もしくは週に一回でも実行すればいいんじゃないでしょうか。
それに似た話で、今回のスクリプトの仮登録だけして放置された場合の仮登録ファイルの削除処理について、これから新しい日記を書きます。
タイムスタンプとは少し毛色が違いますが、参考になると思います。

えーっと遅くなりました。

たしかに壊れることは少なくなりましたけど、逆にそれに油断してしまって、これに関しては全くバックアップしてませんでした。
ストレージったら、記憶媒体?みたいな感じですかね。ふつうはHDDだと思いますが、俺のルータマシンの場合コンパクトフラッシュなのでわかりやすいようにとストレージと書きました。
単純に、システム入ってるディスクが丸ごと吹っ飛んで、バックアップもしてなかったので一から作り直したってことです。
泣きそうでした。
ということで、今回はコンパクトフラッシュを2枚買って、ソフトウェアRAIDでミラーリングしてみました。壊れたときどういう動きをするのか知らないから効果があるのかどうか知らないですけど・・・

大阪には一般道で外環・中環・内環と3つの環状線と呼ばれる環状になってない道があります。
外環は奈良や和歌山すれすれのかなり外側にあります。中環は近畿道という高速に沿って走ってて、堺・東大阪・吹田といった感じで、大阪市の外側を回ります。内環はよく分かりませんけど、大阪市内を通ってます。ごちゃごちゃしてます。


俺もLinuxに関しては周りには知ってる人がいなくて、今使ってるVine3.2で立ててるサーバは本・ネット検索・2ちゃんで質問の3本立てでやりました。ですので、セオリー無視の変なやり方がありそうで人に教えるのは怖いのです。「よく分からんけどいけた」ってのも多いですし・・・

一回でうまくバチっとなんて全くあり得ませんよ俺も。

固定グローバル8本って羨ましいですねぇ。俺もそんな環境で遊びたいです。

PostgreSQL入れられたみたいですけど、たぶんMySQLでも全然問題ないと思いますよ。
ただ、俺の環境はPHP4なので、俺のスクリプトもPHP4で動くように書いてます。ですので、そのへんの互換性の問題でうまく動かない分に関しては、俺には動作チェックの環境がないので、調べた範囲ぐらいでしかお答えできません・・・

俺の手元にあるPHP4の本によりますと、MySQLに接続するときは、
mysql_connect(サーバ名,ユーザ名,パスワード)
で接続出来るようです。ユーザ名・パスワードは省略可能です。データベースサーバの設定に従ってください。
ここで、pg_connect()では接続時にデータベース名を指定出来ますが、mysql_connect()では出来ないので、ユーザ名と違うデータベースを使う場合は、接続語に、mysql_select_db(データベース名)でデータベースを選択するようです。
その後、俺のスクリプトでpg_query()しているところは、mysql_query()でいけるのではないでしょうか。
本に書いてるだけで実験してないので、もしこれで出来そうであれば、わざわざデータベースサーバを二つも運用せずとも、MySQLに絞れると思います。

対話形式は直感的に使いやすいかもしれませんが、スクリプトで実行するにはファイルで読み込ませた方が、コマンドの発行が1行で済むのでこの方がいいかなと思ってこう書いています。

ネームサーバとクライアントが別々のグローバルIPアドレスを持っているのであれば、昨日俺が言ったような問題は起こらないのでしょう。きっと。そんな素敵な環境とは思いもしなかったのですみません。
しかしそれでLAN内からの更新とはどういうことでしょうか?クライアントからネームサーバにはローカルIPアドレスでアクセスするのですか?そうでなければ、internalとexternalに分ける必要も無いのではないでしょうか。自分の持ってる8本のIPアドレスからのみ、再起問い合わせを許可すればいいだけかと思います。
また、nsupdateを実行するWEBサーバの/etc/resolv.confのnameserverも、自前のネームサーバをグローバルIPアドレスで指定しているのであれば、keyファイルの設定が正しくできていれば、特に俺のスクリプトを書き換えずとも動くかと思います。


ddnsadduser.phpの218行目がデータベースへの接続です。
メールを発射するサーバは、Linux版のPHPの場合、PHPを実行するサーバのMTAを使います。
WEBサーバ上でMTAが走っているなら、mb_send_mail(宛先,タイトル,本文,その他ヘッダ)という関数を使えば簡単にメール送信できます。
この関数は戻り値がtrueかfalseなので、送信成功したかどうかも簡単に判断がつきます。

データベースの設定については別に書きます。
そこで、1年たったらお知らせとかのも考えます。

小分けで書く気持ちはよく分かるので大丈夫です。
思いつきでツラツラ書いた日記のコメント欄ですから、そんな堅苦しいこと考えてもらわなくて大丈夫ですよ。

oreoyaji:

げんき様、重ね重ね申し訳ありません。

Mysqlに繋ぐのは、わたしの力量では無理くさいので、postgreSQLをインストールしてみました。

それで、
ddnsadduser.phpをエディタで開いた204行目付近がDBの指定ですよね?
それと、送出するメールサーバの設定箇所が解らないのですが、どこに記述すればよいのでしょう?

あと、もし宜しければ、ddnsadduser.phpはデータベースに向けてクリエートされるものと思いますが、そちらはどの様に作られているのでしょうか?

纏めて書けばよいものを、小分けにして大変に申し訳ありません。

大切なことを忘れてました。
データベースのテーブルの設定を書いてないですね。
1年経ったらお知らせとかは可能です。

帰宅してから詳しく回答したいと思います。

更新スクリプトは、上で公開してる「DDNSアップデートスクリプト」のことを言いました。

oreoyaji:

げんき様、度々すいません。

上記の更新実行スクリプトとは、自分で別に用意するスクリプトなのでしょうか?

それと、例えばなのですが、クライアントが登録を行って、その登録をしてから1年とか経過すると、お知らせする見たいな事って出来ないのですかね。

oreoyaji:

げんき様こんにちは。
サーバの復旧ご苦労様です。
これだけPCの性能や環境などの高機能化が進んでいるのに『壊れる』という事態だけは何時の世もいっこうに改善されませんね。
それでも昔程壊れなくはなったのでしょうけど…。
『ストレージ』というものが解らないのですが、部品なのですか?
Σ( ̄□ ̄)ェェーっ!!
外環は一般道路なんですか?
こちら、東京方面で外環といば高速自動車道です。
大阪外環状はこちらで言う環状7号線や8号線の様な道なのですね。
因みに、当7・8号線も、東京湾付近でおわってしますよ。
どの土地も環状形状の道路は、諸警察の方々が沢山いらっしゃる様で…。 走り難い世の中になったものですね。

さて、
不都合という事は全く無いのですが、あれこれ考えてチャレンジしてみてはいるものの、どうにも上手くいかずといった次第で…。
お恥ずかしい話、私の周りにはこういった環境構築のお話が出来る知人も居らず、本だけを参考に作ってきましたが、やはり行き詰まると本だけではどうにもならないもので、すみませんm(_ _)m。
どうも環境を置き換えるという思考が苦手な様で、1回で上手くバチッとハマった事が無いんです(笑
私の環境を簡単に書きますと…
flet's光回線・固定グローバルIP8本・ルータNTTpr200で、
ネームサーバ
feodra7 bind9.4.2
webサーバ
fedora7 apache2.2.6 MySQL5.0.45 php5.2.4 postfix2.3.6
リモート用PC
windowsXP
と、この様な感じです。
げんき様は、PostgreSQLをお使いになられているようですが、私の方はXoopsを使用する関係上Mysqlが必要で、まずここからどの様にげんき様のスクリプトと繋げれば良いのか思案しております。

《ファイルを指定せずに…》などと、意味の解らない質問をしてしまって申し訳ありません。
対話式でしかnsupdateをした事がなかった為と、睡眠不足による私自身の機能障害を引き起こしていました。
コマンドによる更新の方法が解らなかったので、出来るだけ対話式に近い形でと思い、変な質問をしてしまいました。
当、環境で固定グローバルIPによる接続とLAN内からの更新は出来ています(多分…)。ルータに固定グローバルIPを当てて、ネームサーバ・webサーバの固定IPを通す様にしただけで、NATなどは使用しておりません。
bindはinternal側・external側共に同じファイルを読む様にしてあるのですが、これってマズいんですかね?
《更新実行スクリプト》とは、Diceを指すのでしょうか?
度重なる要領をえない質問で申し訳ありませんが、宜しくお願いします。

昨日の夜にルータのストレージが壊れてることが判明して、今日は復旧作業でサーバが落ちてました。
今まだ断続的に落ちます。

外環というのは大阪外環状線という一般道路で、国道170号線というやつです。
環状線とは名ばかりで、環状じゃないです。
大阪湾に行き止まる感じですね。

計画的な利用はできないと自分でよく分かっておりますので、手を出しにくい次第でございますw


ところで。

まず先に、DNSサーバを指定しているところですが、これは実行するサーバの
/etc/resolv.conf

nameserver
で指定しているDNSサーバに対して行うものだと思います。

そして、BINDと別のサーバにWEBサーバという話ですが、実は俺の環境もその状態です。
俺の場合は、一般的だと思いますが、LAN内からのアクセスとWANからのアクセスで別のzoneファイルを読むようにしてます。
LAN内だとローカルIPを返すようにですね。
これだと、LAN内のサーバから更新すると、ローカルの方のレコードを更新してしまいます。

かといって、LAN内からグローバルIPでルータに接続できませんので、俺はルータでもapacheを走らせて、更新実行スクリプトのみルータ上で動かすという方法をとっています。
もちろんルータ上のapacheは80番では動かせないので、8080番を使ってます。何番を使おうが自由だと思いますけど。

調べてみたところ、何とかすればLAN内からルータにグローバルIPアドレスで接続する方法もあるようなので、それを成功させれば、/etc/resolv.confのnameserverをグローバルIPアドレスに指定してやることで、別サーバから更新することができるかもしれません。

shell_exec関数を使うのでしたら、引数を一つしか取らないので、
exec("nsupdate -k /var/named/Knamed.+???+???.private $update_file",$output,$status);
の行を
$output = shell_exec("nsupdate -k /var/named/Knamed.+???+???.private $update_file");
とすればいいのではないかと思います。

ファイルを使わずに更新するのはどうなんでしょうか。
ちょっと分かりかねます。
nsupdateはコンソールで実行してもらえると分かると思いますが、アップデート情報を書いたファイルを読ませて実行するか、もしくはファイル指定なしで実行して、対話式でアップデート情報を打つかのどちらかなのですね。
PHPから対話式のデータを書き込む方法があるなら、できると思いますが、今のところ知りません。

ファイルを使うのは何か不都合がありますか?

oreoyaji:

げんき様こんにちは。
度々失礼致します。
exec関数を使用しないで、shell_exec等で直接nsupdateを実行する方法などありますでしょうか?
また、nsupdateをファイルを指定せずに実行する方法などありましたら、ご教示ねがえないでしょうか。
宜しくお願い致します。

oreoyaji:

げんき様こんにちは。

大阪の方とは知らず、次から次へと勝手な想像でお話してしまい、申し訳ありませんでした。
『外環』とあったので、つい関東の外環をイメージしてしまい、関東の人だと思い込んでおりました。
関西の環状と言えばあの広い右回りですね。
東京の環状は狭っ苦しくて継目にイラっときますよ。

免許取得には『必殺・鬼ローン』が有効的です。
しかし、ローン会社のCMは
『ご利用は計画的に…』
などと申しておりますが、根本的に『計画性』があれば、あなたのところで借りないよ!
と言ってやりたいです。 はい。


さて、質問なのですが、更新フォーム側のEXEC関数で送信するところですが、同一LAN内のDNSサーバとは別に設置したWEBサーバから実行する場合はどうすればよいのでしょうか?
また、DNSサーバを指定しているのはどこらへんなのでしょうか?
宜しくお願いします。


鈴鹿の写真はビガーのオフ会でたまたま行っただけです・・・
四輪のCBは有名どころではアコードなんかもCD系があります。

免許は欠格期間1年だけなのでまたすぐ取れますが、免許を取る費用を作るのが難しいです。
貯金とか苦手なので笑

俺は大阪の子なので、首都高ではなくグルグル回れる高速といえば阪神高速環状線なんですねー。

俺のスクリプトに関して分からないことがあれば何でも言ってくださいね。
PHP一般に関しての質問でしたら、俺に聞いていただいてもがんばって答えますけど、一般的な質問掲示板や2ちゃんねるのほうが素敵な回答がたくさん得られるかと思いますけど・・・
でも相談は大歓迎です。
聞かれて考えたほうがスキルアップするし、もっと良い書き方を思いつくことにつながるかもしれませんし。

oreoyaji:

げんき様こんにちは。

いえいえ、本当に助かります。
私はまだまだスキル不足で、理解するどころか何を書いているのかすら解らない箇所もちらほらある程です。
php+DDNSの情報が少ない中、正に天からの救いとも思えるげんき様の日記を見つける事ができ、且つ快くスクリプトの公開までしていただけるなんて、感謝の一言では尽きません。
時折何か質問をする事もあるかと存じますが、お付き合い頂けたら幸いです。

余談:CB5はビガーだったんですね(汗)失礼致しました。
CB5とビガーを分けて考えていました。
ホンダ車は四輪の方でもCBの系譜があるとは知りませんでした。
色々弄られていてかっこいいですね。
以前私も四輪を所有していましたが、横転し、オープンカーに様変わりしてしまった為、あえなく廃車処分となってしまいました。
げんき様もサーキット走行をされるようで、機会ありましたら、一緒に走ってみたいですね。
まぁ、現状私は四輪を所有していない為、実現は難しそうですが、欲しい車はあるんですよ。
スバルのインプレッサSTIか三菱のスタリオンかマツダのRX-3に乗りたいですね。
RX-3とスタリオンは現在の燃料の高騰を考えると、間違いなく乗ることは出来ませんが、インプレッサ辺りならば、燃費そこそこ良い様ですし、価格も手頃なのでいいかも、と、思い耽っている次第です。
弟、こうき様のVRXもいいですね。
ホンダのVツインエンジンは名作中の名作ですから、中間速などは滅法強いですよね。

スピード違反は痛いですね。
然も免許取り消しとは…、かなり辛いと思いますが、暫くたてば、また免許を取得する事は出来るんですよね?
私も若い頃に、無免許で13回の逮捕歴があり、23歳を過ぎるまで、免許を取得することを許されていませんでした。
20歳の時に検問で逃走し御用になったの皮切りに、免許が取れる様になるまで一切の車・単車から離れて、我慢し、免許を取得する事が出来ました。
げんき様もお辛いでしょうが、免許を取り戻すその日まで、頑張りましょう。
免許が戻ったあかつきには、首都高で元気に走り回りましょう。

首都高C1外回り加速のメタボリッカーOreoyajiより。

どうもどうも。

そんな感謝されるといろいろ心配になりますw

だいたい独学でやってるものなので、
セオリーから外れたことや、不必要に回りくどい書き方をしてるかもしれませんので、
よく見て直して使ってください。

CB5 VIGORはバイクではなくてホンダの4輪なのです。
残念ながら俺はバイクのことはよく分からないです。ごめんなさい。
http://straight5.mine.nu/photo/cb5/
↑こんなんです。

でも、うちの弟は数年前にホンダのVRXという400ccのバイクに乗っていました。
http://straight5.mine.nu/photo/vrx/
↑こんなんです。

俺自身は、度重なるスピード違反で先週ついに免許の取消処分を受けてしまったという、
車好きの風上にも置けない輩です・・・はい。すみません。

oreoyaji:

こんにちは、Oreoyajiです。

スクリプトの公開、本当に有難うございます。
げんき様の書かれたスクリプトを参考にxoopsとの連繋をしてみたいと思います。
仮メールの送信はmb_sendmail()にすればいいのですね。了解しました。

余談:日記を拝見しました。
げんき様もバイク乗りなのですね。
愛車はCB5とありますが、ホンダ党なのですか?
私もバイク乗りなのですが、一応スズキ党です。

えっと、仮登録メール送信のとこでfsockopen()使って無理やり送信してるのは、諸事情によりMTAの動いてないマシンで処理してるからです。
普通はmb_sendmail()使えばいいかと思います。

ほーそうですか。
新しいものは苦手で、ウィキとかズープスとかゆーのは俺はまだよくわからんのですが、
とりあえず俺の書いたスクリプトの公開ぐらいは出来ます。

参考になるかどうかわかりませんが、公開の追記しました。

もし何かお気づきの点があれば教えてください。

oreoyaji:

ご返信ありがとうございます。

当方ddnsを立てまして、webUpdateの方法を模索中なのですが、webアクセスページにCMSxoopsをしようしたいと考えておりまして、phpのサムプルスクリプトを探しておりました。
よってこちら、げんき様の日記に辿り着いたのですが、まさに私の思う理想のスクリプトである為、是非参考にさせて頂きたく、ご迷惑でないのであればソースの公開を切に希望致します。
宜しくお願い致します。

コメントありがとうございます。

長いソースで、見栄えに自信がないので公開していません・・・

ご要望とあれば公開しますが、少しだけ体裁を整えてからにしたいです。。。

oreoyaji:

ソースの公開はしないのですか?

コメントを投稿