[Commotion-admin] [Commotion-OpenWRT - Feature #447] (Feedback) Auto set-up all ethernet interfaces, not just eth0

Josh King joshking at newamerica.net
Mon Mar 4 16:50:14 UTC 2013


Hi Andy,

The bandwidth thing is not in DR1, but it is a high-priority 
development task immediately after. It will not turn off DHCP, it will 
just change the routing so that it is not routed as a gateway. There is 
already a package that does this, freifunk-policyrouting, but it's not 
as sophisticated as we would like (it lets you decide not to share your 
bandwidth, it doesn't allow you to decide to share some of it).

DR1 will have the same (but better, in that it should detect cable 
plugs and not just work on boot) DHCP lease detection on wired 
interfaces.

On Mon 04 Mar 2013 11:33:59 AM EST, Andy Gunn wrote:
> Sorry to take so long to get back to y'all on this, but I have a thought.
>
> How much autodetection behaviour will be irrelevant or bypassed with the
> new Quickstart process?
>
> For example, if I select that I don't want to share my bandwidth, will
> it turn the DHCP client off on the Ethernet port? Or is there other
> behaviour that will be pre-empted by the generated or uploaded
> configurations?
>
>
> On 02/05/2013 05:50 PM, commotion-admin at lists.chambana.net wrote:
>> Issue #447 has been updated by Josh King.
>>
>>   * *Status* changed from /New/ to /Feedback/
>>   * *Assignee* set to /Josh King/
>>
>> It's not that straightforward. It's not a misconfiguration, but it's
>> true that Commotion currently lacks that capability. I'll try and
>> explain below, and then elicit some feedback:
>>
>>   * We currently don't deal with trying to autoconfigure more than one
>>     interface at a time, because it requires more sophisticated handling
>>     of bridged interfaces than we currently have. PR3 added support for
>>     bridges, but it basically just doesn't obliterate them, not handle
>>     them specially. Since autoconfiguring multiple ports would make it
>>     unclear what IPs or IP subnets should be assigned (just increment
>>     them forever? do we have to adjust DHCP handouts so we don't step on
>>     our own addresses? Doesn't seem extensible), we would probably
>>     establish a LAN bridge and add all LAN interfaces to that. We would
>>     need to add or remove automatically configuring interfaces from the
>>     bridge depending on whether it's a gateway, given that we want the
>>     bridge to only be offering DHCP addresses, not requesting them. The
>>     scripts just don't do that at the moment, and it's tricky to get
>>     them to since there are all sorts of hidden manual checks and
>>     handling for things like bridge interfaces, and since the old
>>     network scripts are not very stateful it's slightly tough to modify
>>     a bridge on the fly. This might be easier with Attitude Adjustment.
>>
>>   * It's not clear what the default behavior should be. Do we try by
>>     default to detect gateways on all interfaces? We can request
>>     multiple addresses, but we can only have one valid gateway at a
>>     time. If a new interface gets plugged and receives a valid address,
>>     does that mean that the other gateway interface gets clobbered?
>>
>> My opinion is that the default behavior is that the first ethernet
>> interface is autodetecting, and then all the others get added to a LAN
>> bridge and just hand out leases, and other situations would have to be
>> configured at least somewhat manually. This most closely mimics how
>> routers work by default, with a WAN port and several LAN ports. However,
>> this would actually NOT address the use case you're suggesting
>> automatically, so I'd like to ask for more feedback on what we think the
>> default use case should be.
>>
>> ------------------------------------------------------------------------
>>
>>
>>   Feature #447: Auto set-up all ethernet interfaces, not just eth0
>>   <https://code.commotionwireless.net/issues/447#change-1177>
>>
>>   * Author: Preston Rhea
>>   * Status: Feedback
>>   * Priority: Normal
>>   * Assignee: Josh King
>>   * Category:
>>   * Target version:
>>
>> As I understood from my conversation with Will, the Commotion set-up
>> script only automatically configures the primary ethernet interface on
>> NanoStations. We talked it through and, from the field team's
>> perspective, we think it would be best for the script to execute the
>> same steps and configuration process that runs for eth0 on every
>> ethernet interface a device has.
>>
>> Commotion never automatically includes eth1. Will does not know where
>> the mis-configuration happens - it may be disabled, or the software may
>> lack this capability presently.
>>
>> Here's the whole conversation output:
>>
>> The primary port is eth0, and Commotion automatically includes and turns
>> this port on by default. However it does not automatically turn on eth1,
>> even when there is a secondary port present.
>>
>> To search for and change / establish interfaces, one must enter
>> etc/config/network filesystem. This file is processed by the Commotion
>> scripts for mesh, commotionwireless.sh. However, actually establishing
>> the interface take places at the OS / kernel level (Commotion OpenWRT in
>> this case). If one runs ifconfig, they will not necessarily see eth1
>> because it is down or not on, but running ifconfig eth1 will show its
>> information.
>>
>> It seems Andy had a script to add in at the bottom of the Commotion GUI
>> to add in Power over Ethernet (PoE) electricity passthrough for the
>> secondary port. To date, pasting this script in the GUI is the method to
>> get the secondary port of NanoStations passing power. Once this change
>> is made, the node must power cycle and reboot.
>>
>> Following this, eth1 must be set as a dynamic, not static, interface to
>> accept whatever IP address its gateway will give it. In this case, the
>> NanoStation Loco daisy-chained to the secondary port on the Commotion
>> NanoStation is the gateway node, so the secondary port (eth1) on the
>> Commotion NanoStation is the gateway port. From this point forward, that
>> Commotion NanoStation announces itself as a gateway to the rest of the mesh.
>>
>> Finally, Will put eth1 in the WAN firewall zone. Thus, when traffic
>> comes through, it can go out the WAN through to the mesh. This happens
>> by default on eth0, but when we add eth1, we have to instruct it to
>> allow traffic to pass through WAN.
>>
>> ------------------------------------------------------------------------
>>
>> You have received this notification because you have either subscribed
>> to it, or are involved in it.
>> To change your notification preferences, please click here:
>> http://code.commotionwireless.net/my/account
>>
>

--
Josh King
Technical Lead
Open Technology Institute
New America Foundation

-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 901 bytes
Desc: OpenPGP digital signature
URL: <http://lists.chambana.net/pipermail/commotion-admin/attachments/20130304/c65fab05/attachment.sig>


More information about the Commotion-admin mailing list