IPv6 implementation code

Previous Topic Next Topic
 
classic Classic list List threaded Threaded
10 messages Options
Reply | Threaded
Open this post in threaded view
|

IPv6 implementation code

Alan Pinch
Could anyone be able to point me to working IPv6 code for squeak,
please? I would appreciate any link.

Alan

Reply | Threaded
Open this post in threaded view
|

Re: IPv6 implementation code

David T. Lewis
On Sun, Sep 17, 2017 at 09:46:49PM -0400, Alan Pinch wrote:
> Could anyone be able to point me to working IPv6 code for squeak,
> please? I would appreciate any link.
>
> Alan
>

In the preferences browser, catagory general, set the preference for
"Enable IPv6 and new network support" to true.

The default setting is false, largely because of some network name
resolver issues on the Windows platform.

I do not think that the IPv6 code is exercised much, because most
people probably leave their image in the default mode. So if you are
using this and find problems with it, please let us know what does
not work.

Dave
 

Reply | Threaded
Open this post in threaded view
|

Re: IPv6 implementation code

Alan Pinch
I am running the Ubuntu 32-bit vm and I enabledIPv6: through the
preferences browser. I am able to run yet it seems it is still IPv4. I
do not know enough how IPv6 should work. I get the following host addresses:

     Connection
running..<cap://127.0.1.1:10012/Xrlgak8yDT0hgspNx0AyWoCdoZo=,
cap://127.0.0.1:47684/FL4dilz6eq2sZDG5wKp3TFDoQEE=>

I get the following from NetNameResolver localAddressString
127.0.1.1

Alan

On 09/17/2017 10:44 PM, David T. Lewis wrote:

> On Sun, Sep 17, 2017 at 09:46:49PM -0400, Alan Pinch wrote:
>> Could anyone be able to point me to working IPv6 code for squeak,
>> please? I would appreciate any link.
>>
>> Alan
>>
> In the preferences browser, catagory general, set the preference for
> "Enable IPv6 and new network support" to true.
>
> The default setting is false, largely because of some network name
> resolver issues on the Windows platform.
>
> I do not think that the IPv6 code is exercised much, because most
> people probably leave their image in the default mode. So if you are
> using this and find problems with it, please let us know what does
> not work.
>
> Dave
>  
>


Reply | Threaded
Open this post in threaded view
|

Re: IPv6 implementation code

Tobias Pape
Hi Alan


> On 18.09.2017, at 10:19, Alan Pinch <[hidden email]> wrote:
>
> I am running the Ubuntu 32-bit vm and I enabledIPv6: through the preferences browser. I am able to run yet it seems it is still IPv4. I do not know enough how IPv6 should work. I get the following host addresses:
>
>     Connection running..<cap://127.0.1.1:10012/Xrlgak8yDT0hgspNx0AyWoCdoZo=, cap://127.0.0.1:47684/FL4dilz6eq2sZDG5wKp3TFDoQEE=>
>
> I get the following from NetNameResolver localAddressString
> 127.0.1.1

I just checked. Bear with me here:

In most imaged you will see for

        printIt NetNameResolver useOldNetwork. "true"

If your VM and OS supports IPv6 (it should) you will see

        printIt NetNameResolver hasIpv6PrimSupport. "true"

So you then can

        doIt NetNameResolver enableIPv6: true.

If that worked, you will find

        printIt NetNameResolver useOldNetwork. " false"

From now on, you will get more "interesting" network names. Look at the result of

        NetNameResolver localHostAddress.
        NetNameResolver localHostName.

(note that those are typically NOT localhost)
Also you should see

        printIt NetNameResolver addressForName: 'localhost'. "::1(localhost),0(0)"

-=-=-=-=-=-=-

So far so good.

If you now try to, for example get some IPv6-enabled url, your should see

        printIt (WebClient httpGet: 'http://ipv6-test.com') status. " 'HTTP/1.1 200 OK'"

But this won't probably work _unless_ you have the fixes in your image which I uploaded just 5 minutes ago (WebClient-topa.110, Network-topa.205) ;)

Best regards
        -Tobias



>
> Alan
>
> On 09/17/2017 10:44 PM, David T. Lewis wrote:
>> On Sun, Sep 17, 2017 at 09:46:49PM -0400, Alan Pinch wrote:
>>> Could anyone be able to point me to working IPv6 code for squeak,
>>> please? I would appreciate any link.
>>>
>>> Alan
>>>
>> In the preferences browser, catagory general, set the preference for
>> "Enable IPv6 and new network support" to true.
>>
>> The default setting is false, largely because of some network name
>> resolver issues on the Windows platform.
>>
>> I do not think that the IPv6 code is exercised much, because most
>> people probably leave their image in the default mode. So if you are
>> using this and find problems with it, please let us know what does
>> not work.
>>
>> Dave
>>  
>
>


Reply | Threaded
Open this post in threaded view
|

Re: IPv6 implementation code

Levente Uzonyi
Unfortunately, things are a bit more complicated.

localhost may not be a name assigned to ::1. For example on my Ubuntu
14.04 it is not. However, there's ip6-localhost which resolves to ::1.

NetNameResolver class >> #localHostName returns the name of the machine
instead of 'localhost'. This is fine, but again, if there's no IPv6
address assigned to that name, it won't work as you would expect.

NetNameResolver class >> #localAddressString will only return the string
representation of the first address assigned to the machine's name.

There's NetNameResolver class >> #addressesForName: which can be more
useful, because it'll return all names. So, here's a snippet to get a
collection with the assigned IPv6 addresses' string representation:

(NetNameResolver addressesForName: NetNameResolver localHostName)
         select: [ :each | each addressFamilyName == #inet6 ]
         thenCollect: [ :each | each socketAddress hostNumber ].

Levente

On Mon, 18 Sep 2017, Tobias Pape wrote:

> Hi Alan
>
>
>> On 18.09.2017, at 10:19, Alan Pinch <[hidden email]> wrote:
>>
>> I am running the Ubuntu 32-bit vm and I enabledIPv6: through the preferences browser. I am able to run yet it seems it is still IPv4. I do not know enough how IPv6 should work. I get the following host addresses:
>>
>>     Connection running..<cap://127.0.1.1:10012/Xrlgak8yDT0hgspNx0AyWoCdoZo=, cap://127.0.0.1:47684/FL4dilz6eq2sZDG5wKp3TFDoQEE=>
>>
>> I get the following from NetNameResolver localAddressString
>> 127.0.1.1
>
> I just checked. Bear with me here:
>
> In most imaged you will see for
>
> printIt NetNameResolver useOldNetwork. "true"
>
> If your VM and OS supports IPv6 (it should) you will see
>
> printIt NetNameResolver hasIpv6PrimSupport. "true"
>
> So you then can
>
> doIt NetNameResolver enableIPv6: true.
>
> If that worked, you will find
>
> printIt NetNameResolver useOldNetwork. " false"
>
> From now on, you will get more "interesting" network names. Look at the result of
>
> NetNameResolver localHostAddress.
> NetNameResolver localHostName.
>
> (note that those are typically NOT localhost)
> Also you should see
>
> printIt NetNameResolver addressForName: 'localhost'. "::1(localhost),0(0)"
>
> -=-=-=-=-=-=-
>
> So far so good.
>
> If you now try to, for example get some IPv6-enabled url, your should see
>
> printIt (WebClient httpGet: 'http://ipv6-test.com') status. " 'HTTP/1.1 200 OK'"
>
> But this won't probably work _unless_ you have the fixes in your image which I uploaded just 5 minutes ago (WebClient-topa.110, Network-topa.205) ;)
>
> Best regards
> -Tobias
>
>
>
>>
>> Alan
>>
>> On 09/17/2017 10:44 PM, David T. Lewis wrote:
>>> On Sun, Sep 17, 2017 at 09:46:49PM -0400, Alan Pinch wrote:
>>>> Could anyone be able to point me to working IPv6 code for squeak,
>>>> please? I would appreciate any link.
>>>>
>>>> Alan
>>>>
>>> In the preferences browser, catagory general, set the preference for
>>> "Enable IPv6 and new network support" to true.
>>>
>>> The default setting is false, largely because of some network name
>>> resolver issues on the Windows platform.
>>>
>>> I do not think that the IPv6 code is exercised much, because most
>>> people probably leave their image in the default mode. So if you are
>>> using this and find problems with it, please let us know what does
>>> not work.
>>>
>>> Dave
>>>
>>
>>

Reply | Threaded
Open this post in threaded view
|

Re: IPv6 implementation code

Alan Pinch
I will try with this approach. I had seen a package somewhere that did
work with IPv6 but I lost it. Would anyone know of a package such as a
reference?


Alan


On 09/18/2017 11:22 AM, Levente Uzonyi wrote:

> Unfortunately, things are a bit more complicated.
>
> localhost may not be a name assigned to ::1. For example on my Ubuntu
> 14.04 it is not. However, there's ip6-localhost which resolves to ::1.
>
> NetNameResolver class >> #localHostName returns the name of the
> machine instead of 'localhost'. This is fine, but again, if there's no
> IPv6 address assigned to that name, it won't work as you would expect.
>
> NetNameResolver class >> #localAddressString will only return the
> string representation of the first address assigned to the machine's
> name.
>
> There's NetNameResolver class >> #addressesForName: which can be more
> useful, because it'll return all names. So, here's a snippet to get a
> collection with the assigned IPv6 addresses' string representation:
>
> (NetNameResolver addressesForName: NetNameResolver localHostName)
>         select: [ :each | each addressFamilyName == #inet6 ]
>         thenCollect: [ :each | each socketAddress hostNumber ].
>
> Levente
>
> On Mon, 18 Sep 2017, Tobias Pape wrote:
>
>> Hi Alan
>>
>>
>>> On 18.09.2017, at 10:19, Alan Pinch <[hidden email]> wrote:
>>>
>>> I am running the Ubuntu 32-bit vm and I enabledIPv6: through the
>>> preferences browser. I am able to run yet it seems it is still IPv4.
>>> I do not know enough how IPv6 should work. I get the following host
>>> addresses:
>>>
>>>     Connection
>>> running..<cap://127.0.1.1:10012/Xrlgak8yDT0hgspNx0AyWoCdoZo=,
>>> cap://127.0.0.1:47684/FL4dilz6eq2sZDG5wKp3TFDoQEE=>
>>>
>>> I get the following from NetNameResolver localAddressString
>>> 127.0.1.1
>>
>> I just checked. Bear with me here:
>>
>> In most imaged you will see for
>>     printIt     NetNameResolver useOldNetwork. "true"
>>
>> If your VM and OS supports IPv6 (it should) you will see
>>
>>     printIt        NetNameResolver hasIpv6PrimSupport. "true"
>>
>> So you then can
>>
>>     doIt        NetNameResolver enableIPv6: true.
>>
>> If that worked, you will find
>>
>>     printIt        NetNameResolver useOldNetwork. " false"
>>
>> From now on, you will get more "interesting" network names. Look at
>> the result of
>>
>>     NetNameResolver localHostAddress.
>>     NetNameResolver localHostName.
>>
>> (note that those are typically NOT localhost)
>> Also you should see
>>
>>     printIt        NetNameResolver addressForName: 'localhost'.
>> "::1(localhost),0(0)"
>>
>> -=-=-=-=-=-=-
>>
>> So far so good.
>>
>> If you now try to, for example get some IPv6-enabled url, your should
>> see
>>
>>     printIt        (WebClient httpGet: 'http://ipv6-test.com')
>> status. " 'HTTP/1.1 200 OK'"
>>
>> But this won't probably work _unless_ you have the fixes in your
>> image which I uploaded just 5 minutes ago (WebClient-topa.110,
>> Network-topa.205) ;)
>>
>> Best regards
>>     -Tobias
>>
>>
>>
>>>
>>> Alan
>>>
>>> On 09/17/2017 10:44 PM, David T. Lewis wrote:
>>>> On Sun, Sep 17, 2017 at 09:46:49PM -0400, Alan Pinch wrote:
>>>>> Could anyone be able to point me to working IPv6 code for squeak,
>>>>> please? I would appreciate any link.
>>>>>
>>>>> Alan
>>>>>
>>>> In the preferences browser, catagory general, set the preference for
>>>> "Enable IPv6 and new network support" to true.
>>>>
>>>> The default setting is false, largely because of some network name
>>>> resolver issues on the Windows platform.
>>>>
>>>> I do not think that the IPv6 code is exercised much, because most
>>>> people probably leave their image in the default mode. So if you are
>>>> using this and find problems with it, please let us know what does
>>>> not work.
>>>>
>>>> Dave
>>>>
>>>
>>>
>


Reply | Threaded
Open this post in threaded view
|

Re: IPv6 implementation code

Alan Pinch
In reply to this post by Levente Uzonyi
On 09/18/2017 11:22 AM, Levente Uzonyi wrote:

> Unfortunately, things are a bit more complicated.
>
> localhost may not be a name assigned to ::1. For example on my Ubuntu
> 14.04 it is not. However, there's ip6-localhost which resolves to ::1.
>
> NetNameResolver class >> #localHostName returns the name of the
> machine instead of 'localhost'. This is fine, but again, if there's no
> IPv6 address assigned to that name, it won't work as you would expect.
>
> NetNameResolver class >> #localAddressString will only return the
> string representation of the first address assigned to the machine's
> name.
>
> There's NetNameResolver class >> #addressesForName: which can be more
> useful, because it'll return all names. So, here's a snippet to get a
> collection with the assigned IPv6 addresses' string representation:
>
> (NetNameResolver addressesForName: NetNameResolver localHostName)
>         select: [ :each | each addressFamilyName == #inet6 ]
>         thenCollect: [ :each | each socketAddress hostNumber ].

Here are my results. For some reason the #addressesForName: is not
seeing my wireless DHCP, though my machine claims it is ETHERNET.


(NetNameResolver addressesForName: NetNameResolver localHostName)
     select: [ :each | each addressFamilyName == #inet6 ]
     thenCollect: [ :each | each socketAddress hostNumber ].
  an OrderedCollection()

NetNameResolver addressesForName: NetNameResolver localHostName
  an OrderedCollection(127.0.1.1(callisto),0(0)-inet4-stream-tcp)

wlp2s0    Link encap:Ethernet  HWaddr 40:25:c2:b0:7b:0c
           inet addr:192.168.43.32  Bcast:192.168.43.255 Mask:255.255.255.0
           inet6 addr: fe80::94ac:2d16:6700:1ed5/64 Scope:Link
           UP BROADCAST RUNNING MULTICAST  MTU:1500  Metric:1
           RX packets:97074 errors:0 dropped:0 overruns:0 frame:0
           TX packets:52659 errors:0 dropped:0 overruns:0 carrier:0
           collisions:0 txqueuelen:1000
           RX bytes:106056900 (106.0 MB)  TX bytes:9058187 (9.0 MB)



NetNameResolver useOldNetwork. "true"  false
NetNameResolver hasIpv6PrimSupport. "true"  true
NetNameResolver enableIPv6. true
NetNameResolver enableIPv6: true. NetNameResolver
NetNameResolver useOldNetwork. " false" false
NetNameResolver localHostAddress. 127.0.1.1(callisto),0(0)
NetNameResolver localHostName. 'callisto'
NetNameResolver addressForName: 'localhost'. "::1(localhost),0(0)"
127.0.0.1(localhost),0(0)

-=-=-=-=-=-=-

So far so good.

If you now try to, for example get some IPv6-enabled url, your should see

(WebClient httpGet: 'http://ipv6-test.com') status. " 'HTTP/1.1 200 OK'"
'HTTP/1.1 200 OK'


It's localhost is still ipv4 but supports ipv6 calls is what I am
seeing, plus missing the wireless interface.

I appreciate your consideration,
Alan

>
> Levente
>
> On Mon, 18 Sep 2017, Tobias Pape wrote:
>
>> Hi Alan
>>
>>
>>> On 18.09.2017, at 10:19, Alan Pinch <[hidden email]> wrote:
>>>
>>> I am running the Ubuntu 32-bit vm and I enabledIPv6: through the
>>> preferences browser. I am able to run yet it seems it is still IPv4.
>>> I do not know enough how IPv6 should work. I get the following host
>>> addresses:
>>>
>>>     Connection
>>> running..<cap://127.0.1.1:10012/Xrlgak8yDT0hgspNx0AyWoCdoZo=,
>>> cap://127.0.0.1:47684/FL4dilz6eq2sZDG5wKp3TFDoQEE=>
>>>
>>> I get the following from NetNameResolver localAddressString
>>> 127.0.1.1
>>
>> I just checked. Bear with me here:
>>
>> In most imaged you will see for
>>     printIt     NetNameResolver useOldNetwork. "true"
>>
>> If your VM and OS supports IPv6 (it should) you will see
>>
>>     printIt        NetNameResolver hasIpv6PrimSupport. "true"
>>
>> So you then can
>>
>>     doIt        NetNameResolver enableIPv6: true.
>>
>> If that worked, you will find
>>
>>     printIt        NetNameResolver useOldNetwork. " false"
>>
>> From now on, you will get more "interesting" network names. Look at
>> the result of
>>
>>     NetNameResolver localHostAddress.
>>     NetNameResolver localHostName.
>>
>> (note that those are typically NOT localhost)
>> Also you should see
>>
>>     printIt        NetNameResolver addressForName: 'localhost'.
>> "::1(localhost),0(0)"
>>
>> -=-=-=-=-=-=-
>>
>> So far so good.
>>
>> If you now try to, for example get some IPv6-enabled url, your should
>> see
>>
>>     printIt        (WebClient httpGet: 'http://ipv6-test.com')
>> status. " 'HTTP/1.1 200 OK'"
>>
>> But this won't probably work _unless_ you have the fixes in your
>> image which I uploaded just 5 minutes ago (WebClient-topa.110,
>> Network-topa.205) ;)
>>
>> Best regards
>>     -Tobias
>>
>>
>>
>>>
>>> Alan
>>>
>>> On 09/17/2017 10:44 PM, David T. Lewis wrote:
>>>> On Sun, Sep 17, 2017 at 09:46:49PM -0400, Alan Pinch wrote:
>>>>> Could anyone be able to point me to working IPv6 code for squeak,
>>>>> please? I would appreciate any link.
>>>>>
>>>>> Alan
>>>>>
>>>> In the preferences browser, catagory general, set the preference for
>>>> "Enable IPv6 and new network support" to true.
>>>>
>>>> The default setting is false, largely because of some network name
>>>> resolver issues on the Windows platform.
>>>>
>>>> I do not think that the IPv6 code is exercised much, because most
>>>> people probably leave their image in the default mode. So if you are
>>>> using this and find problems with it, please let us know what does
>>>> not work.
>>>>
>>>> Dave
>>>>
>>>
>>>
>


Reply | Threaded
Open this post in threaded view
|

Re: IPv6 implementation code

Alan Pinch
In reply to this post by Tobias Pape
Hi Tobias,

Running ifconfig on my Ubuntu box shows an ethernet inteface, my
wireless uplink. This inteface does not show up in addressesForName:,
whether I call it with 'callisto' or 'localhost'. Your call to the
ipv6-test.com site works. Is it possible that last works, as the machine
is ipv6 enabled, but squeak primitive is still missing that interface
for some reason. I know you cannot know my machine's configuration to
debug. Perhaps you could tell me how to debug here for you? I am not
sure of the next step and I question my wherewithall.

At your service, Alan


wlp2s0    Link encap:Ethernet  HWaddr 40:25:c2:b0:7b:0c
           inet addr:192.168.43.32  Bcast:192.168.43.255 Mask:255.255.255.0
           inet6 addr: fe80::94ac:2d16:6700:1ed5/64 Scope:Link
           UP BROADCAST RUNNING MULTICAST  MTU:1500  Metric:1
           RX packets:97074 errors:0 dropped:0 overruns:0 frame:0
           TX packets:52659 errors:0 dropped:0 overruns:0 carrier:0
           collisions:0 txqueuelen:1000
           RX bytes:106056900 (106.0 MB)  TX bytes:9058187 (9.0 MB)

NetNameResolver localHostName 'callisto'
NetNameResolver addressesForName: NetNameResolver localHostName
  an OrderedCollection(127.0.1.1(callisto),0(0)-inet4-stream-tcp)

NetNameResolver addressesForName: 'localhost'
  an OrderedCollection(127.0.0.1(localhost),0(0)-inet4-stream-tcp)


On 09/18/2017 10:46 AM, Tobias Pape wrote:

> Hi Alan
>
>
>> On 18.09.2017, at 10:19, Alan Pinch <[hidden email]> wrote:
>>
>> I am running the Ubuntu 32-bit vm and I enabledIPv6: through the preferences browser. I am able to run yet it seems it is still IPv4. I do not know enough how IPv6 should work. I get the following host addresses:
>>
>>      Connection running..<cap://127.0.1.1:10012/Xrlgak8yDT0hgspNx0AyWoCdoZo=, cap://127.0.0.1:47684/FL4dilz6eq2sZDG5wKp3TFDoQEE=>
>>
>> I get the following from NetNameResolver localAddressString
>> 127.0.1.1
> I just checked. Bear with me here:
>
> In most imaged you will see for
>
> printIt NetNameResolver useOldNetwork. "true"
>
> If your VM and OS supports IPv6 (it should) you will see
>
> printIt NetNameResolver hasIpv6PrimSupport. "true"
>
> So you then can
>
> doIt NetNameResolver enableIPv6: true.
>
> If that worked, you will find
>
> printIt NetNameResolver useOldNetwork. " false"
>
>  From now on, you will get more "interesting" network names. Look at the result of
>
> NetNameResolver localHostAddress.
> NetNameResolver localHostName.
>
> (note that those are typically NOT localhost)
> Also you should see
>
> printIt NetNameResolver addressForName: 'localhost'. "::1(localhost),0(0)"
>
> -=-=-=-=-=-=-
>
> So far so good.
>
> If you now try to, for example get some IPv6-enabled url, your should see
>
> printIt (WebClient httpGet: 'http://ipv6-test.com') status. " 'HTTP/1.1 200 OK'"
>
> But this won't probably work _unless_ you have the fixes in your image which I uploaded just 5 minutes ago (WebClient-topa.110, Network-topa.205) ;)
>
> Best regards
> -Tobias
>
>
>
>> Alan
>>
>> On 09/17/2017 10:44 PM, David T. Lewis wrote:
>>> On Sun, Sep 17, 2017 at 09:46:49PM -0400, Alan Pinch wrote:
>>>> Could anyone be able to point me to working IPv6 code for squeak,
>>>> please? I would appreciate any link.
>>>>
>>>> Alan
>>>>
>>> In the preferences browser, catagory general, set the preference for
>>> "Enable IPv6 and new network support" to true.
>>>
>>> The default setting is false, largely because of some network name
>>> resolver issues on the Windows platform.
>>>
>>> I do not think that the IPv6 code is exercised much, because most
>>> people probably leave their image in the default mode. So if you are
>>> using this and find problems with it, please let us know what does
>>> not work.
>>>
>>> Dave
>>>  
>>
>

--
Thank you for your consideration,
Alan


Reply | Threaded
Open this post in threaded view
|

Re: IPv6 implementation code

Levente Uzonyi
On Sat, 23 Sep 2017, Alan Pinch wrote:

> Hi Tobias,
>
> Running ifconfig on my Ubuntu box shows an ethernet inteface, my
> wireless uplink. This inteface does not show up in addressesForName:,
> whether I call it with 'callisto' or 'localhost'. Your call to the

The primitive shows what the DNS service on your machine provides. If
there is no name attached to your IPv6 address, it won't show up (unless
you know its address, because you can use that too).

AFAIK, the VM can't tell what interfaces are avaiable, which is probably
what you're actually looking for.

Levente

> ipv6-test.com site works. Is it possible that last works, as the machine
> is ipv6 enabled, but squeak primitive is still missing that interface
> for some reason. I know you cannot know my machine's configuration to
> debug. Perhaps you could tell me how to debug here for you? I am not
> sure of the next step and I question my wherewithall.
>
> At your service, Alan
>
>
> wlp2s0    Link encap:Ethernet  HWaddr 40:25:c2:b0:7b:0c
>           inet addr:192.168.43.32  Bcast:192.168.43.255 Mask:255.255.255.0
>           inet6 addr: fe80::94ac:2d16:6700:1ed5/64 Scope:Link
>           UP BROADCAST RUNNING MULTICAST  MTU:1500  Metric:1
>           RX packets:97074 errors:0 dropped:0 overruns:0 frame:0
>           TX packets:52659 errors:0 dropped:0 overruns:0 carrier:0
>           collisions:0 txqueuelen:1000
>           RX bytes:106056900 (106.0 MB)  TX bytes:9058187 (9.0 MB)
>
> NetNameResolver localHostName 'callisto'
> NetNameResolver addressesForName: NetNameResolver localHostName
>  an OrderedCollection(127.0.1.1(callisto),0(0)-inet4-stream-tcp)
>
> NetNameResolver addressesForName: 'localhost'
>  an OrderedCollection(127.0.0.1(localhost),0(0)-inet4-stream-tcp)
>
>
> On 09/18/2017 10:46 AM, Tobias Pape wrote:
>> Hi Alan
>>
>>
>>> On 18.09.2017, at 10:19, Alan Pinch <[hidden email]> wrote:
>>>
>>> I am running the Ubuntu 32-bit vm and I enabledIPv6: through the
> preferences browser. I am able to run yet it seems it is still IPv4. I do not
> know enough how IPv6 should work. I get the following host addresses:
>>>
>>>      Connection
> running..<cap://127.0.1.1:10012/Xrlgak8yDT0hgspNx0AyWoCdoZo=,
> cap://127.0.0.1:47684/FL4dilz6eq2sZDG5wKp3TFDoQEE=>
>>>
>>> I get the following from NetNameResolver localAddressString
>>> 127.0.1.1
>> I just checked. Bear with me here:
>>
>> In most imaged you will see for
>>
>> printIt NetNameResolver useOldNetwork. "true"
>>
>> If your VM and OS supports IPv6 (it should) you will see
>>
>> printIt NetNameResolver hasIpv6PrimSupport. "true"
>>
>> So you then can
>>
>> doIt NetNameResolver enableIPv6: true.
>>
>> If that worked, you will find
>>
>> printIt NetNameResolver useOldNetwork. " false"
>>
>>  From now on, you will get more "interesting" network names. Look at the
> result of
>>
>> NetNameResolver localHostAddress.
>> NetNameResolver localHostName.
>>
>> (note that those are typically NOT localhost)
>> Also you should see
>>
>> printIt NetNameResolver addressForName: 'localhost'.
> "::1(localhost),0(0)"
>>
>> -=-=-=-=-=-=-
>>
>> So far so good.
>>
>> If you now try to, for example get some IPv6-enabled url, your should see
>>
>> printIt (WebClient httpGet: 'http://ipv6-test.com') status. "
> 'HTTP/1.1 200 OK'"
>>
>> But this won't probably work _unless_ you have the fixes in your image
> which I uploaded just 5 minutes ago (WebClient-topa.110, Network-topa.205) ;)
>>
>> Best regards
>> -Tobias
>>
>>
>>
>>> Alan
>>>
>>> On 09/17/2017 10:44 PM, David T. Lewis wrote:
>>>> On Sun, Sep 17, 2017 at 09:46:49PM -0400, Alan Pinch wrote:
>>>>> Could anyone be able to point me to working IPv6 code for squeak,
>>>>> please? I would appreciate any link.
>>>>>
>>>>> Alan
>>>>>
>>>> In the preferences browser, catagory general, set the preference for
>>>> "Enable IPv6 and new network support" to true.
>>>>
>>>> The default setting is false, largely because of some network name
>>>> resolver issues on the Windows platform.
>>>>
>>>> I do not think that the IPv6 code is exercised much, because most
>>>> people probably leave their image in the default mode. So if you are
>>>> using this and find problems with it, please let us know what does
>>>> not work.
>>>>
>>>> Dave
>>>>
>>>
>>
>
> --
> Thank you for your consideration,
> Alan
>
>
>

Reply | Threaded
Open this post in threaded view
|

Re: IPv6 implementation code

Alan Pinch

I got my other interface up and recognized in squeak but only the ipv4 address, not its ipv6 address. I tried adding the ipv6 address to the hosts file but it still did not work. Are others getting the inet6 addresses? Obviously, I am oblivious that it is my machine config, but I am unsure how to config it right.

Here are my results with 'callistohouse' configured. I stuck.

(NetNameResolver addressesForName: NetNameResolver localHostName)
    select: [ :each | each addressFamilyName == #inet6 ]
    thenCollect: [ :each | each socketAddress hostNumber ].
 an OrderedCollection()

NetNameResolver addressesForName: NetNameResolver localHostName
 an OrderedCollection(192.168.43.32(callistohouse),0(0)-inet4-stream-tcp)

wlp2s0    Link encap:Ethernet  HWaddr 40:25:c2:b0:7b:0c 
          inet addr:192.168.43.32  Bcast:192.168.43.255  Mask:255.255.255.0
          inet6 addr: fe80::94ac:2d16:6700:1ed5/64 Scope:Link
          UP BROADCAST RUNNING MULTICAST  MTU:1500  Metric:1
          RX packets:101 errors:0 dropped:0 overruns:0 frame:0
          TX packets:152 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:1000
          RX bytes:98104 (98.1 KB)  TX bytes:18112 (18.1 KB)


NetNameResolver useOldNetwork. "true" false
NetNameResolver hasIpv6PrimSupport. "true"  true
NetNameResolver enableIPv6. true
NetNameResolver enableIPv6: true. NetNameResolver
NetNameResolver useOldNetwork. " false" false
NetNameResolver localHostAddress.  192.168.43.32(callistohouse),0(0)
NetNameResolver localHostName. 'callisto'
NetNameResolver addressForName: 'localhost'. "::1(localhost),0(0)" 127.0.0.1(localhost),0(0)
NetNameResolver addressForName: 'callisto'. "::1(localhost),0(0)"  192.168.43.32(callistohouse),0(0)
NetNameResolver addressForName: 'callistohouse'. "::1(localhost),0(0)" 192.168.43.32(callistohouse),0(0)


On 09/23/2017 09:32 AM, Levente Uzonyi wrote:
On Sat, 23 Sep 2017, Alan Pinch wrote:

Hi Tobias,

Running ifconfig on my Ubuntu box shows an ethernet inteface, my wireless uplink. This inteface does not show up in addressesForName:, whether I call it with 'callisto' or 'localhost'. Your call to the

The primitive shows what the DNS service on your machine provides. If there is no name attached to your IPv6 address, it won't show up (unless you know its address, because you can use that too).

AFAIK, the VM can't tell what interfaces are avaiable, which is probably what you're actually looking for.

Levente

ipv6-test.com site works. Is it possible that last works, as the machine is ipv6 enabled, but squeak primitive is still missing that interface for some reason. I know you cannot know my machine's configuration to debug. Perhaps you could tell me how to debug here for you? I am not sure of the next step and I question my wherewithall.

At your service, Alan


wlp2s0    Link encap:Ethernet  HWaddr 40:25:c2:b0:7b:0c
          inet addr:192.168.43.32  Bcast:192.168.43.255 Mask:255.255.255.0
          inet6 addr: fe80::94ac:2d16:6700:1ed5/64 Scope:Link
          UP BROADCAST RUNNING MULTICAST  MTU:1500  Metric:1
          RX packets:97074 errors:0 dropped:0 overruns:0 frame:0
          TX packets:52659 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:1000
          RX bytes:106056900 (106.0 MB)  TX bytes:9058187 (9.0 MB)

NetNameResolver localHostName 'callisto'
NetNameResolver addressesForName: NetNameResolver localHostName
 an OrderedCollection(127.0.1.1(callisto),0(0)-inet4-stream-tcp)

NetNameResolver addressesForName: 'localhost'
 an OrderedCollection(127.0.0.1(localhost),0(0)-inet4-stream-tcp)


On 09/18/2017 10:46 AM, Tobias Pape wrote:
Hi Alan


On 18.09.2017, at 10:19, Alan Pinch [hidden email] wrote:

I am running the Ubuntu 32-bit vm and I enabledIPv6: through the
preferences browser. I am able to run yet it seems it is still IPv4. I do not know enough how IPv6 should work. I get the following host addresses:

     Connection
running..<cap://127.0.1.1:10012/Xrlgak8yDT0hgspNx0AyWoCdoZo=, cap://127.0.0.1:47684/FL4dilz6eq2sZDG5wKp3TFDoQEE=>

I get the following from NetNameResolver localAddressString
127.0.1.1
I just checked. Bear with me here:

In most imaged you will see for

    printIt     NetNameResolver useOldNetwork. "true"

If your VM and OS supports IPv6 (it should) you will see

    printIt        NetNameResolver hasIpv6PrimSupport. "true"

So you then can

    doIt        NetNameResolver enableIPv6: true.

If that worked, you will find

    printIt        NetNameResolver useOldNetwork. " false"

 From now on, you will get more "interesting" network names. Look at the
result of

    NetNameResolver localHostAddress.
    NetNameResolver localHostName.

(note that those are typically NOT localhost)
Also you should see

    printIt        NetNameResolver addressForName: 'localhost'.
"::1(localhost),0(0)"

-=-=-=-=-=-=-

So far so good.

If you now try to, for example get some IPv6-enabled url, your should see

    printIt        (WebClient httpGet: 'http://ipv6-test.com') status. "
'HTTP/1.1 200 OK'"

But this won't probably work _unless_ you have the fixes in your image
which I uploaded just 5 minutes ago (WebClient-topa.110, Network-topa.205) ;)

Best regards
    -Tobias



Alan

On 09/17/2017 10:44 PM, David T. Lewis wrote:
On Sun, Sep 17, 2017 at 09:46:49PM -0400, Alan Pinch wrote:
Could anyone be able to point me to working IPv6 code for squeak,
please? I would appreciate any link.

Alan

In the preferences browser, catagory general, set the preference for
"Enable IPv6 and new network support" to true.

The default setting is false, largely because of some network name
resolver issues on the Windows platform.

I do not think that the IPv6 code is exercised much, because most
people probably leave their image in the default mode. So if you are
using this and find problems with it, please let us know what does
not work.

Dave




-- 
Thank you for your consideration,
Alan






    

-- 
Thank you for your consideration,
Alan