Many thanks for those comments. I will try to answer them as best I can:
> First of all, there is no reason to believe that the name is Irish and not
> Brittonic; there is nothing non-Brittonic about it.
It is hard to prove a negative, such as that "Dobunni" is NOT Brittonic. I can only say I have looked for likely Brittonic meanings and found nothing plausible. I tend to look at Alan James' "Brittonic Language in the Old North" and to Gaulish (Delamarre). Welsh, Cornish and Breton are not reliable guides to Brittonic because they contain so many Irish loanwords.
> Secondly, the termination -nni surely does not contain a "suffix -de (or
> dae) which indicates origin or kind"; the name is attested long before the
> cluster -nd- became -nn- in Irish or Brittonic and the Irish suffix -d[a]e
> is an io-stem and would have been -odio- in Proto-Irish.
This is partly a question of chronology. I really don't know when nd developed into nn in Irish, or whether it happened at a particular point in time. But "Dobunni" would be a fairly early example. A Proto-Irish "-odio-" would, I feel, have existed very much earlier - it could have been a thousand years earlier - and therefore would hardly be relevant.
> Old Irish bun was used of river mouths/estuaries, but its primary meaning
> is "ground, bottom, base"; it is cognate with Welsh bôn "bottom, base; tree
> trunk, (tree) stock, stump, stem, root", which the GPC reconstructs as
> *bonus (Matasovic, EDPC, lists it as *bonu-) and compares to the
> Continental Celtic place names Uindo-bona (Vienna) and Bonna (Bonn). So, it
> is unlikely that Dobunni contains this root.
Depends what you mean by "primary meaning". You may well be right about the primary meaning in PIE, 6000 years ago, but in Irish toponymy it means a river mouth in the great majority of instances. (Hogan lists about 50 instances: almost all refer to a river mouth, and a handful, perhaps 3 or 4, refer to the foothills of a mountain.) Other meanings existed in non-toponymic contexts, such as "tree-trunk", but are a good deal rarer.
I was aware of "bona" in Gaulish, etc., on the Continent, but I believe that there it generally had the meaning of "village". I may well have been ultimately cognate with Irish "bun", but the two words had drifted apart semantically.
I'm not sure about the etymology of Welsh bôn. It is tempting to suggest that it is a borrowing of the Irish "bun"; but since the vowels are not the same it may be authentically Brittonic and therefore linked more closely to the Gaulish "bona".
> Thirdly, while it's not impossible that the name should be parsed as *do- +
> *bun(n)-, it is just as likely that it should analyzed as *do-bu-n(n)- or
> *dobu-n(n)- (and the gemination of the -n- in its written form could be a
> non-etymological Latinism, as we see in other Celtic names in Latin source,
> perhaps having something to do with the length of the preceding vowel that
> was foreign to Latin speakers).
Fair point, but I don't know what *dobu- would mean, or *bu (unless it had something to do with cows).
> I wonder if the name (and this assumes that *do- actually is an early
> instance of the voicing of the initial t- in *to-) might be related to the
> Welsh dyfod "having come, newly arrived, but lately come; hailing from
> another place", which comes from Proto-Celtic *to-bu-ta
> (Proto-Indo-European *to- + *b?uH-)?
That's a nice idea, but would need a bit of work! I know very little about Welsh historical phonology. I wonder how securely it is known that "dyfod" came from "*tobuta". I am personally sceptical about the existence of "Proto-Celtic".