Ciao Davy
Due considerazioni a riguardo.
La prima, come ti è stato segnalato, è valutare quale "host" ti serve. Se hai un'applicazione client che accede direttamente a SqlServer, probabilmente la via che hai trovato è corretta, poichè ogni connessione parte dai PC che usano la tua app.
Se invece passi da un server centralizzato, ad esempio tramite dei web-service o pagine web, allora avrai sempre un nome host nel database, però anzichè essere quello del PC da cui parte la richiesta, sarà sempre quello del server che fa le operazioni, rendendo probabilmente inutile l'informazione.
La seconda è quella di valutare se la strada percorsa sia corretta. Se ti serve per "individuare il colpevole" nel caso di problemi, probabilmente la strada indicata può avere delle falle. Il valore di default viene messo solo quando la query di INSERT non lo specifica. Pertanto nessuno vieta di aggiungere un valore nella INSERT e così il valore di default viene ignorato.
Se vuoi essere sicuro al 100% che sia l'host di inserimento, allora potresti valutare di usare un trigger che, in caso di insert, forzi il valore. In questo modo, anche se la INSERT indica un host, il tuo trigger lo sovrascrive col valore preso dal sistema, evitando che qualcuno possa forzarlo.
Ovviamente poi devi gestire anche il fatto che nessuno possa modificarlo successivamente con una UPDATE...
Non so se ti servano così tanti accorgimenti, magari nella tua realtà basta il meccanismo che hai implementato, però tienine conto perchè se ti servono certezze su quel campo, allora devi assicurarti di averle