[Comm] Re: [Support] bugs: "/etc/sysconfig/network-scripts/if-up" + "/sbin/dhcpcd" + 2 network interfaces w/ dhcp addresses

Igor Muratov =?iso-8859-1?q?migor_=CE=C1_altlinux=2Eru?=
Ср Янв 22 14:16:38 MSK 2003


-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1

Направлено в BTS

Oleg K. Artemjev пишет:
| Кто-то тут изумлялся, почему у него не подымается IP? ;) А не более ли
чем одна у Вас карта?
|
| Повесте кто нибудь за меня это на bug interface - у меня http уж
больно сильно зарезан..
|
| Alt Linux Master 2.0
|
|
| [root на ws002 root]# /sbin/dhcpcd eth0
| [root на ws002 root]# echo $?
| 0
| [root на ws002 root]# /sbin/dhcpcd eth1
| [root на ws002 root]# echo $?
| 1
| [root на ws002 root]# /etc/rc.d/init.d/network stop
| Shutting down interface eth0:
                                 [  OK  ]
| Shutting down interface eth1:
                                 [  OK  ]
| [root на ws002 root]# /sbin/dhcpcd eth1
| [root на ws002 root]# echo $?
| 0
| [root на ws002 root]# /sbin/dhcpcd eth0
| [root на ws002 root]# echo $?
| 1
| [root на ws002 root]#
|
| В /etc/sysconfig/network-scripts/if-up в этом кусочке
|
| if [ -n "$DYNCONFIG" ]; then
|     echo -n "Determining IP information for $DEVICE via
${DHCP_CLIENT##*/}..."
|     if $DHCP_CLIENT $DHCP_ARGS; then
|     echo " done."
|     else
|     echo " failed."
|     exit 1
|     fi
|
| конфликт с возвратом $? от dhcpcd <interface>.
|
| [root на ws002 root]# /etc/rc.d/init.d/network stop
| Shutting down interface eth0:
                                 [  OK  ]
| Shutting down interface eth1:
                                 [  OK  ]
| [root на ws002 root]# dhcpcd eth0
| [root на ws002 root]# echo $?
| 0
| [root на ws002 root]# dhcpcd eth1
| [root на ws002 root]# echo $?
| 1
| [root на ws002 root]# ifconfig
| eth0      Link encap:Ethernet  HWaddr 00:05:5D:28:3C:AE
|           inet addr:192.168.200.2  Bcast:192.168.200.255
Mask:255.255.255.0
|           UP BROADCAST NOTRAILERS RUNNING  MTU:1500  Metric:1
|           RX packets:4067 errors:0 dropped:0 overruns:0 frame:0
|           TX packets:1170 errors:0 dropped:0 overruns:0 carrier:0
|           collisions:0
|           RX bytes:1494436 (1.4 Mb)  TX bytes:117127 (114.3 Kb)
|
| eth1      Link encap:Ethernet  HWaddr 00:C0:DF:09:20:9D
|           UP BROADCAST NOTRAILERS RUNNING  MTU:1500  Metric:1
|           RX packets:6632 errors:0 dropped:0 overruns:0 frame:0
|           TX packets:925 errors:0 dropped:0 overruns:0 carrier:0
|           collisions:0
|           RX bytes:1977332 (1.8 Mb)  TX bytes:63176 (61.6 Kb)
|
| [root на ws002 root]#
|
| Таким образом баг в самом dhcpcd который не отрабатывает корректно
ситуацию с двумя картами.
|
| [root на ws002 root]# strace /sbin/dhcpcd eth1 2> /tmp/dcpcd.strace
| [root на ws002 root]# cat /tmp/dcpcd.strace
| execve("/sbin/dhcpcd", ["/sbin/dhcpcd", "eth1"], [/* 44 vars */]) = 0
| uname({sys="Linux", node="ws002", ...}) = 0
| brk(0)                                  = 0x8051754
| open("/etc/ld.so.preload", O_RDONLY)    = -1 ENOENT (No such file or
directory)
| open("/etc/ld.so.cache", O_RDONLY)      = 3
| fstat64(3, {st_mode=S_IFREG|0644, st_size=117420, ...}) = 0
| old_mmap(NULL, 117420, PROT_READ, MAP_PRIVATE, 3, 0) = 0x2aabf000
| close(3)                                = 0
| open("/lib/libc.so.6", O_RDONLY)        = 3
| read(3, "\177ELF\1\1\1\0\0\0\0\0\0\0\0\0\3\0\3\0\1\0\0\0000\210"...,
1024) = 1024
| fstat64(3, {st_mode=S_IFREG|0755, st_size=5752480, ...}) = 0
| old_mmap(NULL, 1264224, PROT_READ|PROT_EXEC, MAP_PRIVATE, 3, 0) =
0x2aadc000
| mprotect(0x2ac07000, 39520, PROT_NONE)  = 0
| old_mmap(0x2ac07000, 24576, PROT_READ|PROT_WRITE,
MAP_PRIVATE|MAP_FIXED, 3, 0x12a000) = 0x2ac07000
| old_mmap(0x2ac0d000, 14944, PROT_READ|PROT_WRITE,
MAP_PRIVATE|MAP_FIXED|MAP_ANONYMOUS, -1, 0) = 0x2ac0d000
| close(3)                                = 0
| old_mmap(NULL, 4096, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS,
- -1, 0) = 0x2ac11000
| munmap(0x2aabf000, 117420)              = 0
| getuid32()                              = 0
| umask(022)                              = 022
| open("/var/run/dhcpcd-eth1.pid", O_RDONLY) = -1 ENOENT (No such file
or directory)
| rt_sigaction(SIGHUP, NULL, {SIG_DFL}, 8) = 0
| rt_sigaction(SIGHUP, {0x804a3c0, [], 0x4000000}, NULL, 8) = 0
| rt_sigaction(SIGINT, {0x804a3c0, [], 0x4000000}, NULL, 8) = 0
| rt_sigaction(SIGQUIT, {0x804a3c0, [], 0x4000000}, NULL, 8) = 0
| rt_sigaction(SIGILL, {0x804a3c0, [], 0x4000000}, NULL, 8) = 0
| rt_sigaction(SIGTRAP, {0x804a3c0, [], 0x4000000}, NULL, 8) = 0
| rt_sigaction(SIGABRT, {0x804a3c0, [], 0x4000000}, NULL, 8) = 0
| rt_sigaction(SIGBUS, {0x804a3c0, [], 0x4000000}, NULL, 8) = 0
| rt_sigaction(SIGFPE, {0x804a3c0, [], 0x4000000}, NULL, 8) = 0
| rt_sigaction(SIGKILL, {0x804a3c0, [], 0x4000000}, NULL, 8) = -1 EINVAL
(Invalid argument)
| rt_sigaction(SIGUSR1, {0x804a3c0, [], 0x4000000}, NULL, 8) = 0
| rt_sigaction(SIGSEGV, {0x804a3c0, [], 0x4000000}, NULL, 8) = 0
| rt_sigaction(SIGUSR2, {0x804a3c0, [], 0x4000000}, NULL, 8) = 0
| rt_sigaction(SIGPIPE, {0x804a3c0, [], 0x4000000}, NULL, 8) = 0
| rt_sigaction(SIGALRM, {0x804a3c0, [], 0x4000000}, NULL, 8) = 0
| rt_sigaction(SIGTERM, {0x804a3c0, [], 0x4000000}, NULL, 8) = 0
| rt_sigaction(SIGCHLD, {0x804a3c0, [], 0x4000000}, NULL, 8) = 0
| alarm(60)                               = 0
| socket(PF_PACKET, SOCK_PACKET, 768)     = 3
| ioctl(3, 0x8927, 0x7ffff760)            = 0
| setsockopt(3, SOL_SOCKET, SO_BROADCAST, [1], 4) = 0
| ioctl(3, 0x8914, 0x7ffff760)            = 0
| ioctl(3, 0x8927, 0x7ffff760)            = 0
| setsockopt(3, SOL_SOCKET, SO_BROADCAST, [1], 4) = 0
| ioctl(3, 0x8914, 0x7ffff760)            = 0
| bind(3, {sin_family=AF_PACKET, proto=0x6574, if12648, pkttype=0,
addr(0)={0, }, 16) = 0
| time(NULL)                              = 1043241962
| socket(PF_INET, SOCK_DGRAM, IPPROTO_IP) = 4
| setsockopt(4, SOL_SOCKET, SO_BROADCAST, [1], 4) = 0
| bind(4, {sin_family=AF_INET, sin_port=htons(68),
sin_addr=inet_addr("0.0.0.0")}}, 16) = -1 EADDRINUSE (Address already in
use)
| brk(0)                                  = 0x8051754
| brk(0x80518e4)                          = 0x80518e4
| brk(0x8052000)                          = 0x8052000
| brk(0x8055000)                          = 0x8055000
| time([1043241962])                      = 1043241962
| open("/etc/localtime", O_RDONLY)        = 5
| fstat64(5, {st_mode=S_IFREG|0644, st_size=815, ...}) = 0
| old_mmap(NULL, 4096, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS,
- -1, 0) = 0x2aabf000
| read(5, "TZif\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\f\0\0\0\f\0"...,
4096) = 815
| close(5)                                = 0
| munmap(0x2aabf000, 4096)                = 0
| getpid()                                = 10047
| rt_sigaction(SIGPIPE, {0x2abbed90, [], 0x4000000}, {0x804a3c0, [],
0x4000000}, 8) = 0
| socket(PF_UNIX, SOCK_DGRAM, 0)          = 5
| fcntl64(5, F_SETFD, FD_CLOEXEC)         = 0
| connect(5, {sin_family=AF_UNIX, path="/dev/log"}, 16) = 0
| send(5, "<131>Jan 22 16:26:02 dhcpcd[1004"..., 76, 0) = 76
| rt_sigaction(SIGPIPE, {0x804a3c0, [], 0x4000000}, NULL, 8) = 0
| _exit(1)                                = ?
|
|
|
|
|
|
|
|
|
|

- --
With best regards                    System administrator
Igor Muratov                         mailto:migor at altlinux.ru
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.2.1 (GNU/Linux)
Comment: Using GnuPG with Mozilla - http://enigmail.mozdev.org

iD8DBQE+Ln2VqjgjB/MK76QRAg4CAJ94ixszXyDXWSU8PTuni6HuftB1iQCfYnQV
Uf8rBsuc5ib5aUJpgO0sqBY=
=SzMq
-----END PGP SIGNATURE-----




Подробная информация о списке рассылки community