Hello Meem,
Thanks for your comments. Some of your questions on show-address and
show-interface will be answered by Vasumathi. Please see in-line
Some high-level comments:
* As we discussed in another thread last week, it would be a real shame
to let the current "interface duality" survive the ipadm transition.
That is, right now ifconfig has a notion of separate IPv4 and IPv6
interfaces that have identical names. I believe this is the wrong
model. Instead, there should be one administrative IP interface
object which can have any number of IPv4 and IPv6 addresses. For this
to work without having a ripple effect, I think you'd need to then
make the logical index field be a tuple of the address family and type
(e.g., v4:2 and v6:2 would be distinct logicals).
Today we already have the facility of representing an interface using
two tuples. "-f <inet|inet6> -l <logical num>". We can possibly extend
this to achieve what you are saying.
* For dladm, we generally chose to abbreviate subcommand names - e.g.,
we have add-aggr, not add-aggregation. I think we should do the same
thing here -- e.g., address -> addr, interface -> if
Sure thing will update the document.
Some low-level comments (not exhaustive):
* Not sure why "ipmp" is an interface sub-option. The model I'd expect
is that every IP interface has a "class", just like every datalink
has a class. There are at least two classes (ipmp and "normal") and
there may be more depending on how we want to model things (e.g.,
other things that "act different" include point-to-point, tunnels,
loopback and vni).
In the case of 'dladm' every sub-command which created the data-link
determined the class of the datalink, i.e. create-vnic meant
DATALINK_CLASS_VNIC, create-vlan meant DATALINK_CLASS_VLAN, et al.
But in ipadm you have one subcommand 'create-interface' to create all
interfaces. Now how do we specify the class here? Do we want a command
option to specify the class? Also isn't this implementation specific
stuff which we would be exposing to Users.
* The "group" suboption absolutely must not be mandatory, and probably
shouldn't exist at all. (Backstory: the group name should be the
same as the interface name from Clearview IPMP onwards; cases where
they're different are historical.)
OK. Will update the document.
* Not sure why tunnel src/dst are specified specially. If these are
the outer IP addresses, why are they not handled by add-addr? If
these are the inner IP addresses, why are they here at all given
dladm *-iptun?
True and it will be removed.
* Seems to be a bunch of stuff glommed into the ADDRTYPE field, like
ipmp-* and iptun-*. This really doesn't belong.
* There's a lot of information missing from the show-address view that
can matter (IFF_TEMPORARY, IFF_PREFERRED, IFF_DEPRECATED, ...) but
that isn't displayed.
* Some thought needs to be put into the property names. For instance,
the document has both ip_ttl and ip_def_ttl but really the "ip_" is
totally unnecessary given the context of the command. Further, given
that the general syntax for ipadm uses dashes I'd encourage us to use
dashes here too (yes, mistakes were made in this regard with dladm;
we're looking to fix those).
Sure. Given that for ipadm subcommands set-prop & show-prop, expect '-m
<proto_module>' we can clearly get rid of prefixes ip_ or tcp_ or udp_ .
Also we will have to think of better names for properties which give
away internal names like 'ire' in ip_ire_pathmtu_interval or
ip_ire_redirect_interval.
yes we will use dashes instead of underscores.
thanks
~Girish
_______________________________________________
networking-discuss mailing list
[email protected]