From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: X-Injected-Via-Gmane: http://gmane.org/ To: sysadmins@lists.altlinux.org From: =?KOI8-R?B?98HEyc0g6czMwdLJz87P1w==?= Date: Thu, 12 Jul 2007 18:05:03 +0900 Organization: =?KOI8-R?B?9dPPzNjFLfPJwsnS08vJyiDQz97Uwc3U?= Message-ID: References: <20070706093015.9551f403.2182@r66.ru> <20070706081841.74ff5765@naf177.naf.net.ru> <20070706054237.GD8972@wrars-comp.wrarsdomain> Mime-Version: 1.0 Content-Type: text/plain; charset=koi8-r Content-Transfer-Encoding: 8Bit X-Complaints-To: usenet@sea.gmane.org X-Gmane-NNTP-Posting-Host: 82.211.160.248 User-Agent: KNode/0.10.4 Sender: news Subject: Re: [Sysadmins] =?koi8-r?b?69XEwSDQ0s/QwcwgaXBjYWxj?= X-BeenThere: sysadmins@lists.altlinux.org X-Mailman-Version: 2.1.9rc1 Precedence: list Reply-To: master@usib.irkps.ru, ALT Linux sysadmin discuss List-Id: ALT Linux sysadmin discuss List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Thu, 12 Jul 2007 09:05:20 -0000 Archived-At: List-Archive: От Andrey Rahmatullin поступило следующее: > On Fri, Jul 06, 2007 at 02:35:55PM +0900, Вадим Илларионов wrote: >> Хм. А не место ли ему в net-tools? > Или ещё где-нибудь. >> Ведь net-scripts & etcnet вместе генетически не живут. > Ага. Вопрос снят. Удалось обойтись средствами шелла - спасибо коллеге. Получилась такая небольшенькая функция: get_ipv4_nets(){ local NAME=${1:?missing 1st argument to $FUNCNAME} # FIXME should we parse it by more complex regexp? for ADDR in $($IP -4 addr show dev $NAME 2>/dev/null | \ grep -ose "\binet\b.*\b" | cut -d" " -f2); do echo "$ADDR" | grep -q "/" && { local IFS=$'./' SHIFT=24 addr=0 for i in $ADDR; do [ $SHIFT -lt 0 ] && MASK=$((32 - i)) || ((addr |= (i << SHIFT))) ((SHIFT -= 8)) done ((addr &= 4294967295 >> MASK << MASK)) echo "$((addr >> 24)).$(((addr >> 16) & 255)).$(((addr >> 8) & 255)).$((addr & 255))" } done } ________________________ С уважением, Вадим Илларионов системный администратор Усолье-Сибирский почтамт JID: см. UIN: 7899517 Телефоны: Мобильный +7 904 658-4154 Рабочий +7 39543 444-00