Mivel sehogy sem sikerült rájönni, hogy miért is nem müködik, hát irom ide a problémát. Több fej hátha többet tud.
Tehát: adott 1 squid, ami inverzbe működik, avagy kifelé gyorsit.
Ehhez még hozzá 2db apache. Az egyiken sok (nagyon) sok domain, a másikon csak 3.
Amin sok domain van IP-je: 192.168.4.1, amin csak 3, annak: 192.168.4.3
A domain neveket mindenhol helyettesítettem nemlétezőkkel, senkinek ne legyen ingerenciája csúnyán nézni rám emiatt.
A squid dnsserver scriptje, picit patch-elve:
#!/bin/bash
DOMAINLIST="egyikdomain.hu masikdomain.hu harmadikdomain.hu"
export PATH
while (true); do
read a
if [ $? != 0 ]; then exit; fi
addr="\$addr 0 192.168.4.1" #<-- Ha ezt atirom, minden a masikra megy
for i in $DOMAINLIST; do
if ( echo $a | grep -i "$i" &>/dev/null ); then
addr="\$addr 0 192.168.4.3"
if [ $? != 0 ]; then exit; fi
fi
done
# echo $a $addr >>/tmp/debug
echo $addr
done
Tehát mindenre, kivéve erre a háromra azt dobja, hogy 4.1, a maradékra meg, hogy 4.3.
Látható benne egy debug sor, idézek a debugfile-ból egypár sort:
valami.org $addr 0 192.168.4.1
masikvalami.hu $addr 0 192.168.4.1
masikvalami.hu $addr 0 192.168.4.1
masodikdomain.hu $addr 0 192.168.4.3
masodikdomain.hu $addr 0 192.168.4.3
megintvalami.hu $addr 0 192.168.4.1
megintvalami.hu $addr 0 192.168.4.1
harmadikvalami.hu $addr 0 192.168.4.1
harmadikvalami.hu $addr 0 192.168.4.1
ezisegydomain.hu $addr 0 192.168.4.1
ezisegydomain.hu $addr 0 192.168.4.1
esezis.hu $addr 0 192.168.4.1
esezis.hu $addr 0 192.168.4.1
Tehát a dnsserver elvileg jól működik. De valamiért mégse akarja az igazságot a squid, avagy minduntalan a 4.1-ről kér le mindent. Ha átirom a script-be az első addr= sort, akkor mindent a 4.3-ról kér. Tehát a for-os if-es résznél lesz valami elrontva. De micsoda? Hiszen a dump-olt adatba jót mutat.
Van valami ötletetek rá, hogy mi is lehet a probléma, ill. találkozott már valaki hasonlóval?
fake bind vagy powerdns felhuzása most nemigen jöhet szóba, se ugy a /etc/hosts-ba hardba beleirni a domaineket, mert nagyona-nagyon sok van, és ezek naponta változnak is, szóval nem birnánk lekövetni. Kivéve ezt a hármat, amik jobb, ha egy másik apache-on futnak.
Szóval ötletek?
- 795 megtekintés
Hozzászólások
"fake bind vagy powerdns felhuzása most nemigen jöhet szóba, se ugy a /etc/hosts-ba hardba beleirni a domaineket, mert nagyona-nagyon sok van"
és ha sql-be teszed?
http://hup.hu/node/23519
http://mydns.bboy.net/
http://doc.powerdns.com/configuring-db-connection.html#CONFIGURING-MYSQL
Nem csináltam még ilyet, csak 1 ötlet...
Mik
- A hozzászóláshoz be kell jelentkezni
Az a baj igazából, hogy ezek naponta változnak, és nemigen van kedvem ezeknek útánajárni, sőőt, néha nem is lehet. Szóval valami olyan automatika kéne, hogy ezen a 3mon kivül mindent a 4.1-en keressen. Elvileg a script ezt csinálja, de valamiért mégse. Valami banális kis egyszerü dolgon csúszhatok el, ugy, mint amikor a crontab nem kapta meg a path-t, de nem birok rájönni, mi lehet az... :'(
"A herceg én vagyok."
- A hozzászóláshoz be kell jelentkezni