Страница 1 из 1

Падает сервер при запуске squid

Добавлено: 2016-05-19 8:35:37
Reken
Здравствуйте
Подскажите пожалуйста в следующей проблеме:
Имеется комп с FreeBSD 9.3, на компе две сетевые карты. На FreeBSD указан вышестоящий прокси-сервер. То есть FreeBSD смотрит в ИНЕТ через прокси.
На комп установил squid-3.5.19. Теперь сама проблема:
На компе в rc.conf включен файрвол и нат, файрвол грузится скриптом
содержание rc.conf

Код: Выделить всё


hostname="free.domen.local"
gateway_enable="YES"

ifconfig_sis0="inet 192.168.0.37 netmask 255.255.255.0" # внешняя сетевая карта
ifconfig_rl0="inet 192.168.10.4 netmask 255.255.255.0"   # внутрення сетевая карта
defaultrouter="192.168.0.4"                             # шлюз

firewall_nat_enable="YES"
firewall_enable="YES"
firewall_script="/etc/rc.firewall.my"

sshd_enable="YES"
named_enable="YES"
Содержание скрипта файрвола

Код: Выделить всё

FwCMD="/sbin/ipfw -q"
LanOut="sis0"

${FwCMD} -f -q flush

${FwCMD} nat 1 config log if ${LanOut} same_ports
${FwCMD} add nat 1 ip from any to any
Когда ipfw выключен, то squid запускается. Если ipfw включен то при запуске squid у компа возникает "паника" и он уходит в перезагрузку.
Вот содержание core.txt.1 (не полное)

Код: Выделить всё

free.domen.local dumped core - see /var/crash/vmcore.1

Thu May 19 12:27:17 MSK 2016

FreeBSD free.domen.local 9.3-RELEASE FreeBSD 9.3-RELEASE #0 r268512: Fri Jul 11 03:13:02 UTC 2014     root@snap.freebsd.org:/usr/obj/usr/src/sys/GENERIC  i386

panic: page fault

GNU gdb 6.1.1 [FreeBSD]
Copyright 2004 Free Software Foundation, Inc.
GDB is free software, covered by the GNU General Public License, and you are
welcome to change it and/or distribute copies of it under certain conditions.
Type "show copying" to see the conditions.
There is absolutely no warranty for GDB.  Type "show warranty" for details.
This GDB was configured as "i386-marcel-freebsd"...

Unread portion of the kernel message buffer:


Fatal trap 12: page fault while in kernel mode
cpuid = 0; apic id = 00
fault virtual address   = 0xc
fault code              = supervisor read, page not present
instruction pointer     = 0x20:0xc0b3b8e6
stack pointer           = 0x28:0xd9759810
frame pointer           = 0x28:0xd975983c
code segment            = base 0x0, limit 0xfffff, type 0x1b
                        = DPL 0, pres 1, def32 1, gran 1
processor eflags        = interrupt enabled, resume, IOPL = 0
current process         = 906 (pinger)
trap number             = 12
panic: page fault
cpuid = 0
KDB: stack backtrace:
#0 0xc0b0f97f at kdb_backtrace+0x4f
#1 0xc0ad65bf at panic+0x16f
#2 0xc0f9e5a3 at trap_fatal+0x323
#3 0xc0f9e6a8 at trap_pfault+0xf8
#4 0xc0f9fa49 at trap+0x579
#4 0xc0f9fa49 at trap+0x579
#5 0xc0f8862c at calltrap+0x6
#6 0xc0cadb73 at ip6_output+0x1773
#7 0xc0cc18b1 at udp6_send+0x7d1
#8 0xc0b467a6 at sosend_dgram+0x466
#9 0xc0b41a5f at sosend+0x3f
#10 0xc0b495a4 at kern_sendit+0x1d4
#11 0xc0b497e1 at sendit+0xb1
#12 0xc0b498f8 at sys_sendto+0x48
#13 0xc0f9ee93 at syscall+0x443
#14 0xc0f886c1 at Xint0x80_syscall+0x21
Uptime: 1m40s
Physical memory: 459 MB
Dumping 51 MB: 36 20 4

Reading symbols from /boot/kernel/ipfw.ko...Reading symbols from /boot/kernel/ipfw.ko.symbols...done.
done.
Loaded symbols for /boot/kernel/ipfw.ko
Reading symbols from /boot/kernel/ipfw_nat.ko...Reading symbols from /boot/kernel/ipfw_nat.ko.symbols...done.
done.
Loaded symbols for /boot/kernel/ipfw_nat.ko
Reading symbols from /boot/kernel/libalias.ko...Reading symbols from /boot/kernel/libalias.ko.symbols...done.
done.
Loaded symbols for /boot/kernel/libalias.ko
#0  doadump (textdump=1) at pcpu.h:250
250     pcpu.h: No such file or directory.
        in pcpu.h
(kgdb) #0  doadump (textdump=1) at pcpu.h:250
#1  0xc0ad6305 in kern_reboot (howto=260)
    at /usr/src/sys/kern/kern_shutdown.c:454
#2  0xc0ad6602 in panic (fmt=<value optimized out>)
    at /usr/src/sys/kern/kern_shutdown.c:642
#3  0xc0f9e5a3 in trap_fatal (frame=0xd97597d0, eva=12)
    at /usr/src/sys/i386/i386/trap.c:1036
#4  0xc0f9e6a8 in trap_pfault (frame=0xd97597d0, usermode=0, eva=12)
    at /usr/src/sys/i386/i386/trap.c:888
#5  0xc0f9fa49 in trap (frame=0xd97597d0) at /usr/src/sys/i386/i386/trap.c:547
#6  0xc0f8862c in calltrap () at /usr/src/sys/i386/i386/exception.s:170

#7  0xc0b3b8e6 in m_copym (m=0x0, off0=16376, len=7518, wait=1)
    at /usr/src/sys/kern/uipc_mbuf.c:543
#8  0xc0cadb73 in ip6_output (m0=0xc4421400, opt=0x0, ro=0xd9759938, flags=0,
    im6o=0x0, ifpp=0x0, inp=0xc458c2f4)
    at /usr/src/sys/netinet6/ip6_output.c:1151
#9  0xc0cc18b1 in udp6_send (so=0xc47ee820, flags=0, m=0xc4421400, addr=0x0,
    control=0x0, td=0xc44e72f0) at /usr/src/sys/netinet6/udp6_usrreq.c:791
#10 0xc0b467a6 in sosend_dgram (so=0xc47ee820, addr=0x0, uio=0xd9759bb0,
    top=0xc4421400, control=0x0, flags=<value optimized out>, td=0xc44e72f0)
    at /usr/src/sys/kern/uipc_socket.c:1187
#11 0xc0b41a5f in sosend (so=0xc47ee820, addr=0x0, uio=0xd9759bb0, top=0x0,
    control=0x0, flags=0, td=0xc44e72f0)
    at /usr/src/sys/kern/uipc_socket.c:1420
#12 0xc0b495a4 in kern_sendit (td=0xc44e72f0, s=1, mp=0xd9759c24, flags=0,
    control=0x0, segflg=UIO_USERSPACE)
    at /usr/src/sys/kern/uipc_syscalls.c:850
#13 0xc0b497e1 in sendit (td=0xc44e72f0, s=1, mp=0xd9759c24, flags=0)
    at /usr/src/sys/kern/uipc_syscalls.c:778
#14 0xc0b498f8 in sys_sendto (td=0xc44e72f0, uap=0xd9759ccc)
    at /usr/src/sys/kern/uipc_syscalls.c:902
#15 0xc0f9ee93 in syscall (frame=0xd9759d08) at subr_syscall.c:135
#16 0xc0f886c1 in Xint0x80_syscall ()
    at /usr/src/sys/i386/i386/exception.s:270
#17 0x00000033 in ?? ()
Previous frame inner to this frame (corrupt stack?)
(kgdb)

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

Подскажите пожалуйста, из-за чего такое происходит?

Падает сервер при запуске squid

Добавлено: 2016-05-23 9:34:33
Reken
Сам, так и не смог разобраться в этой проблеме. На другом железе (другой комп), та же проблема...

Падает сервер при запуске squid

Добавлено: 2016-05-23 12:45:50
LBV
покажи

Код: Выделить всё

squid -v
и ядро с опцией INET6?

Падает сервер при запуске squid

Добавлено: 2016-05-23 14:09:21
Reken
squid -v

Код: Выделить всё

root@free:~ # squid -v
Squid Cache: Version 3.5.19
Service Name: squid
configure options:  '--with-default-user=squid' '--bindir=/usr/local/sbin' '--sbindir=/usr/local/sbin' '--

datadir=/usr/local/etc/squid' '--libexecdir=/usr/local/libexec/squid' '--localstatedir=/var' '--

sysconfdir=/usr/local/etc/squid' '--with-logdir=/var/log/squid' '--with-pidfile=/var/run/squid/squid.pid' '--with-

swapdir=/var/squid/cache' '--without-gnutls' '--enable-auth' '--enable-build-info' '
--enable-loadable-modules' '--enable-removal-policies=lru heap' '--disable-epoll' '--disable-linux-netfilter' '--

disable-linux-tproxy' '--disable-translation' '--disable-arch-native' '--enable-eui' '--enable-cache-digests' '--

enable-delay-pools' '--disable-ecap' '--disable-esi' '--enable-follow-x-forwarded-for' '--enable-htcp' '--enable-

icap-client' '--enable-icmp' '--enable-ident-lookups' '--enable-ipv6' '--enable-kqueue' '--with-large-files' '--

enable-http-violations' '--without-nettle' '--enable-snmp' '--enable-ssl' '--with-openssl=/usr' 

'LIBOPENSSL_CFLAGS=-I/usr/include' 'LIBOPENSSL_LIBS=-lcrypto -lssl' '--enable-ssl-crtd' '--disable-stacktraces' 

'--enable-forw-via-db' '--enable-wccp' '--enable-wccpv2' '--with-heimdal-krb5=/usr' 'CFLAGS=-I/usr/include -O2 -

pipe -fno-strict-aliasing' 'LDFLAGS=-L/usr/lib  -pthread ' 'LIBS=-lkrb5 -lgssapi -lgssapi_krb5 ' 

'KRB5CONFIG=/usr/ports/www/squid/work/krb5-config' '--disable-ipf-transparent' '--enable-ipfw-transparent' '--

disable-pf-transparent' '--without-nat-devpf' '--enable-auth-basic=DB SMB_LM MSNT-multi-domain NCSA PAM POP3 RADIUS 

fake getpwnam NIS' '--enable-auth-digest=file' '--enable-external-acl-helpers=file_userip time_quota unix_group' 

'--enable-auth-negotiate=kerberos wrapper' '--enable-auth-ntlm=fake smb_lm' '--enable-storeio=aufs diskd rock ufs' 

'--enable-disk-io=DiskThreads DiskDaemon AIO Blocking IpcIo Mmapped' '--enable-log-daemon-helpers=file' '--enable-

url-rewrite-helpers=fake' '--enable-storeid-rewrite-helpers=file' '--prefix=/usr/local' '--mandir=/usr/local/man' 

'--infodir=/usr/local/info/' '--build=i386-portbld-freebsd9.3' 'build_alias=i386-portbld-freebsd9.3' 'CC=cc' 

'CPPFLAGS=' 'CXX=c++' 'CXXFLAGS=-O2 -pipe -fno-strict-aliasing' 'CPP=cpp' --enable-ltdl-convenience
root@free:~ #
Да, ядро с опцией INET6

Падает сервер при запуске squid

Добавлено: 2016-05-23 15:15:38
LBV
Тогда хз, пиши в mail list и делай баг-репорт.

Падает сервер при запуске squid

Добавлено: 2016-05-24 14:37:27
Reken
Всё, вопрос закрыт...
Мне подсказали, что я забыл про lo0
Добавление правила в скрипт фаервола allow ip from any to any via lo0 исправило ситуацию, всё получилось, squid стартует...

Падает сервер при запуске squid

Добавлено: 2016-05-24 21:10:56
Neus
И такая фигня вызывает fatal trap?! %)

Падает сервер при запуске squid

Добавлено: 2016-05-25 8:04:44
Reken
Neus писал(а):И такая фигня вызывает fatal trap?! %)
Получается что так... Другой причины пока что не нашел. Тем более на двух компах на эти грабли наступал