[ixpmanager] Problem with sflow-detect-ixp-bgp-sessions
Marty Strong
marty at cloudflare.com
Fri Jul 8 15:50:04 IST 2016
Sorry for spamming this to the list :(
Regards,
Marty Strong
--------------------------------------
CloudFlare - AS13335
Network Engineer
marty at cloudflare.com
+44 7584 906 055
smartflare (Skype)
https://www.peeringdb.com/asn/13335
> On 8 Jul 2016, at 13:36, Marty Strong <marty at cloudflare.com> wrote:
>
> Hi Rasmus,
>
> Just talked to Eirik and found you’re live on IXPManager now, seems I only have an account on the old portal, can I have one for IXPManager?
>
> Thanks!
>
> Regards,
> Marty Strong
> --------------------------------------
> CloudFlare - AS13335
> Network Engineer
> marty at cloudflare.com
> +44 7584 906 055
> smartflare (Skype)
>
> https://www.peeringdb.com/asn/13335
>
>> On 3 Mar 2016, at 22:19, Rasmus Åberg <rasmus at sthix.net> wrote:
>>
>> Excuse my bad debug code :)
>>
>> Managed to get it working again, thanks!
>>
>> Was caused by an IPv6 address missing a part of its address on one virtual interface. It was 1:2:3:4:5:6:7 instead of 1:2:3:4:5:6:7:8.
>>
>> //Rasmus
>>
>>
>>
>> On 03/03/16 23:06, "ixpmanager on behalf of Nick Hilliard" <ixpmanager-bounces at inex.ie on behalf of nick at inex.ie> wrote:
>>
>>> this:
>>>
>>>> Can't call method "short" on an undefined value at
>>>> /usr/local/bin/sflow-detect-ixp-bgp-sessions line 206.
>>>>
>>>> Line 206:
>>>>
>>>> $mapping->{6}->{NetAddr::IP->new($rec->{address})->short()} = $rec->{id};
>>>
>>> is a different problem to this:
>>>
>>>> When debugging a bit and changing the code on line 206 to the following:
>>>>
>>>> my $foo = NetAddr::IP->new($rec->{address})->short();
>>>> print $foo
>>>> $mapping->{6}->{$foo} == $rec->{id};
>>>
>>>> Can't use string ("2001:7f8:3e:0:a500:3:3886:1") as a symbol ref while
>>>> "strict refs" in use at /usr/local/bin/sflow-detect-ixp-bgp-sessions
>>>> line 208.
>>>>
>>>> ... where line 208 is "print $foo".
>>>
>>> The code you added is wrong: you need a ";" after "print $foo". At the
>>> moment it is being interpreted as:
>>>
>>> my $foo = NetAddr::IP->new($rec->{address})->short();
>>> print $foo $mapping->{6}->{$foo} == $rec->{id};
>>>
>>> I.e. print is attempting to interpret $foo as a file handle. You also
>>> used the "==" comparative operator instead of the "=" assignment operator.
>>>
>>> Can you change your code to:
>>>
>>> --
>>> print Dumper ($rec);
>>> my $foo = NetAddr::IP->new($rec->{address})->short();
>>> print $foo;
>>> $mapping->{6}->{$foo} = $rec->{id};
>>> --
>>>
>>> When short() aborts, the last entry printed should be an empty $rec
>>> entry. Can you post this (removing all sensitive data)?
>>>
>>> Nick
>>> _______________________________________________
>>> INEX IXP Manager mailing list
>>> ixpmanager at inex.ie
>>> https://www.inex.ie/mailman/listinfo/ixpmanager
>>
>> _______________________________________________
>> INEX IXP Manager mailing list
>> ixpmanager at inex.ie
>> https://www.inex.ie/mailman/listinfo/ixpmanager
>
More information about the ixpmanager
mailing list