Hallo,
Op onze servers draaien wij 2 services via xinetd, op poort 9100 en 9200.
Als alles goed draait dan krijgt ik het volgende te zien als ik netstat uitvoer:
Op 1 server gebeurt het echter soms dat deze services stoppen met werken.
Dan zie ik het volgende:
De poorten zijn dus niet meer gebonden aan een proces?
Ik kan nog steeds connecten met deze poorten, maar krijg geen reactie.
Als ik xinetd stop, dan blijven deze poorten gewoon bestaan. Ik kan de services niet meer starten, want xinetd klaagt dat de poorten al in gebruik zijn en dat 'm niet kan binden.
Hoe is dit mogelijk?
Hoe kan ik die poorten sluiten?
De configuratie van de services:
Wat gegevens over de machine:
Edit:
Ondertussen al gevonden dat het xinted process een sigfault gaf, waardoor het proces verdween maar de sockets achterbleven. Oorzaak: buggy kernel.
Mijn vraag blijft echter geldig: hoe geraak je van deze sockets af zonder te rebooten?
Het lijkt niet alsof ze timeouten of zo. Die procesloze sockets zijn nu zeker al 2,5u aanwezig op die machine...
Op onze servers draaien wij 2 services via xinetd, op poort 9100 en 9200.
Als alles goed draait dan krijgt ik het volgende te zien als ik netstat uitvoer:
code:
1
2
3
4
5
6
7
| root@server:~# netstat -A inet -lpn Active Internet connections (only servers) Proto Recv-Q Send-Q Local Address Foreign Address State PID/Program name ... tcp 0 0 127.0.0.1:9100 0.0.0.0:* LISTEN 18716/xinetd tcp 0 0 0.0.0.0:9200 0.0.0.0:* LISTEN 18716/xinetd ... |
Op 1 server gebeurt het echter soms dat deze services stoppen met werken.
Dan zie ik het volgende:
code:
1
2
3
4
5
6
7
| root@server:~# netstat -A inet -lpn Active Internet connections (only servers) Proto Recv-Q Send-Q Local Address Foreign Address State PID/Program name ... tcp 0 0 127.0.0.1:9100 0.0.0.0:* LISTEN - tcp 0 0 0.0.0.0:9200 0.0.0.0:* LISTEN - ... |
De poorten zijn dus niet meer gebonden aan een proces?
Ik kan nog steeds connecten met deze poorten, maar krijg geen reactie.
Als ik xinetd stop, dan blijven deze poorten gewoon bestaan. Ik kan de services niet meer starten, want xinetd klaagt dat de poorten al in gebruik zijn en dat 'm niet kan binden.
code:
1
2
| Feb 24 13:49:03 server xinetd[9548]: bind failed (Address already in use (errno = 98)). service = bla Feb 24 13:49:03 server xinetd[9548]: Service bla failed to start and is deactivated. |
Hoe is dit mogelijk?
Hoe kan ik die poorten sluiten?
De configuratie van de services:
code:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
| service a { flags = REUSE socket_type = stream port = 9100 wait = no user = bla server = /pad/naar/script log_on_failure += USERID disable = no only_from = 127.0.0.1/32 bind = 127.0.0.1 deny_time = NEVER per_source = UNLIMITED cps = 1000 0 } service b { flags = REUSE socket_type = stream port = 9200 wait = no user = nobody server = /pad/naar/ander/script log_on_failure += USERID disable = no only_from = 0.0.0.0/0 } |
Wat gegevens over de machine:
code:
1
2
3
4
| root@server:~# uname -a Linux server 2.6.16-xenU #1 SMP Mon May 28 03:41:49 SAST 2007 i686 GNU/Linux root@server:~# dpkg --list | grep xinetd ii xinetd 1:2.3.14-7ubuntu1 replacement for inetd with many enhancements |
Edit:
Ondertussen al gevonden dat het xinted process een sigfault gaf, waardoor het proces verdween maar de sockets achterbleven. Oorzaak: buggy kernel.
Mijn vraag blijft echter geldig: hoe geraak je van deze sockets af zonder te rebooten?
Het lijkt niet alsof ze timeouten of zo. Die procesloze sockets zijn nu zeker al 2,5u aanwezig op die machine...
[ Voor 6% gewijzigd door DieterVDW op 24-02-2010 16:51 ]