- - PR -
エラー「klips_error:ipsec_xmit_send: ip_send() failed, err=-1」が!
1
投稿者 | 投稿内容 | ||||||||
---|---|---|---|---|---|---|---|---|---|
|
投稿日時: 2004-07-01 15:24
全てRedHat9で(ipsec)VPNを構築しています。
jitaku.dyndns.com (ppp0) | WAN─(ppp0)daigaku.dyndns.net | (ppp0) shokuba.dyndns.co.jp という構成になっていまして今現在は [root@daigaku.dyndns.net]# rpm -qa |grep freeswan freeswan-userland-2.01_2.4.20_8-0 freeswan-module-2.01_2.4.20_8-0 [root@daigaku.dyndns.net]# cat /etc/ipsec.conf | grep -v ^# | grep -v ^$ version 2.0 # conforms to second version of ipsec.conf specification config setup interfaces="ipsec0=ppp0" klipsdebug=none plutodebug=none conn %default type=tunnel keyingtries=3 authby=rsasig keylife=1h pfs=yes conn jitaku-to-daigaku left=ddd.ddd.ddd.ddd leftsubnet=192.168.3.0/24 leftid=@daigaku.dyndns.net leftrsasigkey=0sAQO…iap leftnexthop=DDD.DDD.DDD.DDD right=jj.jjj.jjj.jjj rightsubnet=192.168.0.0/24 rightid=@jitaku.dyndns.com rightrsasigkey=0sAQ…9VU9 rightnexthop=JJJ.JJJ.JJJ.JJJ auto=add conn daigaku-to-shokuba left=ddd.ddd.ddd.ddd leftsubnet=192.168.3.0/24 leftid=@daigaku.dyndns.net leftrsasigkey=0sAQ…jSRYiap leftnexthop=DDD.DDD.DDD.DDD right=sss.sss.sss.sss rightsubnet=192.168.2.0/24 rightid=@shokuba.dyndns.co.jp rightrsasigkey=0sAQN…5S6IXIn rightnexthop=SSS.SSS.SSS.SSS auto=add conn block auto=ignore conn private auto=ignore conn private-or-clear auto=ignore conn clear-or-private auto=ignore conn clear auto=ignore conn packetdefault auto=ignore 残りの2ホストの/etc/ipsec.confも同様に記述しています。 [root@daigaku.dyndns.net]# service ipsec start [root@daigaku.dyndns.net]# ipsec auto --up jitaku-to-daigaku [root@daigaku.dyndns.net]# ipsec auto --up daigaku-to-shokuba daigaku.dyndns.net / \ shokuba.dyndns.co.jp─jitaku.dyndns.com のVPNを構築しています。 時々、 Jul 1 14:39:40 daigaku kernel: klips_error:ipsec_xmit_send: ip_send() failed, err=-1 Jul 1 14:39:45 daigaku kernel: NET: 1 messages suppressed. Jul 1 14:39:45 daigaku kernel: klips_error:ipsec_xmit_send: ip_send() failed, err=-1 Jul 1 14:39:49 daigaku kernel: NET: 1 messages suppressed. Jul 1 14:39:49 daigaku kernel: klips_error:ipsec_xmit_send: ip_send() failed, err=-1 Jul 1 14:39:55 daigaku kernel: NET: 1 messages suppressed. Jul 1 14:39:55 daigaku kernel: klips_error:ipsec_xmit_send: ip_send() failed, err=-1 Jul 1 14:39:59 daigaku kernel: NET: 1 messages suppressed. Jul 1 14:39:59 daigaku kernel: klips_error:ipsec_xmit_send: ip_send() failed, err=-1 Jul 1 14:40:06 daigaku kernel: NET: 2 messages suppressed. Jul 1 14:40:06 daigaku kernel: klips_error:ipsec_xmit_send: ip_send() failed, err=-1 Jul 1 14:40:10 daigaku kernel: NET: 1 messages suppressed. Jul 1 14:40:10 daigaku kernel: klips_error:ipsec_xmit_send: ip_send() failed, err=-1 Jul 1 14:40:15 daigaku kernel: NET: 1 messages suppressed. Jul 1 14:40:15 daigaku kernel: klips_error:ipsec_xmit_send: ip_send() failed, err=-1 Jul 1 14:40:16 daigaku kernel: application bug: perl(14371) has SIGCHLD set to SIG_IGN but calls wait(). Jul 1 14:40:16 daigaku kernel: (see the NOTES section of 'man 2 wait'). Workaround activated. Jul 1 14:40:19 daigaku kernel: NET: 1 messages suppressed. Jul 1 14:40:19 daigaku kernel: klips_error:ipsec_xmit_send: ip_send() failed, err=-1 Jul 1 14:40:26 daigaku kernel: NET: 2 messages suppressed. というエラーがえんえんと表示されます。 これは一体何が原因なのでしょうか? 因みに/var/log/secureには下記のように出ています。 Jul 1 13:47:25 daigaku pluto[19130]: "jitaku-to-daigaku" #41: responding to Main Mode Jul 1 13:47:25 daigaku pluto[19130]: "jitaku-to-daigaku" #41: sent MR3, ISAKMP SA established Jul 1 13:56:55 daigaku pluto[19130]: packet from 219.111.67.245:500: Informational Exchange is for an unknown (expired?) SA Jul 1 14:14:13 daigaku pluto[19130]: "jitaku-to-daigaku" #42: responding to Quick Mode Jul 1 14:14:13 daigaku pluto[19130]: "jitaku-to-daigaku" #42: IPsec SA established {ESP=>0x3fe688ab <0xecb087bc} Jul 1 14:25:47 daigaku pluto[19130]: "jitaku-to-daigaku" #41: ignoring Delete SA payload: PROTO_IPSEC_ESP SA(0x3fe688aa) not found (maybe expired) Jul 1 14:27:35 daigaku sshd[6919]: debug2: channel 0: rcvd adjust 32806 Jul 1 14:33:19 daigaku pluto[19130]: "jitaku-to-daigaku" #43: responding to Main Mode Jul 1 14:33:20 daigaku pluto[19130]: "jitaku-to-daigaku" #43: sent MR3, ISAKMP SA established Jul 1 14:46:56 daigaku sshd[6919]: debug2: channel 0: rcvd adjust 32880 Jul 1 14:47:25 daigaku pluto[19130]: packet from 219.111.67.245:500: Informational Exchange is for an unknown (expired?) SA Jul 1 15:04:58 daigaku pluto[19130]: "jitaku-to-daigaku" #44: responding to Quick Mode Jul 1 15:04:58 daigaku pluto[19130]: "jitaku-to-daigaku" #44: IPsec SA established {ESP=>0x3fe688ac <0xecb087bd} | ||||||||
|
投稿日時: 2004-07-01 20:37
ipsec のことは全然知りませんが...
通信の問題にみえます。 ネットワークインタフェースカードがヘタレだとか、ドライバが バグってるとか、あるいはもっと先のほうでスイッチがおかしい とかの可能性もあるかしら? ・・・いえ、ip_send() がエラーを返す条件は知らないのですが、 たぶんそんなところではないかなあ、と。
これはこれでどうかと思うですが。 Linux で SIGCHLD に SIG_IGN を設定するのはマズイです。 wait()してるのも謎ですが。 ・・・まあ、それほど気にしなくてもいいかもしれませんが、 私の経験としては SIGCHLD に SIG_IGN を設定したらプロセスが 思わぬ挙動をした、ということがあるです。 | ||||||||
|
投稿日時: 2004-07-04 15:27
遅くなりましてすいません。
> これはこれでどうかと思うですが。 > Linux で SIGCHLD に SIG_IGN を設定するのはマズイです。 > wait()してるのも謎ですが。 > ・・・まあ、それほど気にしなくてもいいかもしれませんが、 > 私の経験としては SIGCHLD に SIG_IGN を設定したらプロセスが > 思わぬ挙動をした、ということがあるです。 とりあえず、原因となるファイルを探しました。 # grep SIGCHLD /usr/bin/spamd # this can happen when interrupted by SIGCHLD on Solaris, # with our SIGCHLD handler, but best to keep it around anyway.) # grep wait /usr/bin/spamd use POSIX qw(:sys_wait_h); # now allow waiting processes to connect, if they're watching the log. "): waiting for some to exit"; while ( my $kid = waitpid(-1, &WNOHANG) > 0 ) { Specify a maximum number of children to spawn. Spamd will wait until another だと思います。 # chmod 644 /usr/bin/spamd としてみましたが同様のログが出てしまいます。 うーん、どうすれば SIGCHLD に SIG_IGN を設定しないようにできるのでしょうか? | ||||||||
|
投稿日時: 2004-07-04 20:46
すみません、混乱させてしまったようですが、SIGCHLD の問題は
おそらく本筋ではありません。 KLIPS がエラーを吐いているところが、やはり本題でしょう。 ip_send() がエラーを出しているのは「どうもネットワーク カードが怪しいな」と思ったのですが、そうでもないかも。 検索かけてみると、KLIPS にバグがあるとか、ip_send() のエラーの 取り扱いがどうこうとか、そういった情報がひっかかってきます。 ・・・してみると、とりあえずは FreeS/WAN を最新版に アップデートしてみる、といったところでしょうか。 どうにもはっきりしない話ですみませんが... |
1