On my host machine I have configured the NIC to a fixed IP address of 169.254.103.1 and a subnet mask of 255.255.255.0.
Por que você faria isso? Você não quer que o host responda como 169.254.103.1, você quer que sua máquina virtual responda dessa maneira (com base na sua descrição anterior). Se é assim que você configura, sua VM provavelmente pegou um endereço totalmente diferente 169.254 (zeroconf ou "link local") de forma automática e está falando com algum lugar para o qual você não está prestando atenção (a menos que você o configure para testar o mesmo IP, caso em que se é um sistema operacional Windows ele pirou e ficou offline quando percebeu que o endereço já estava em uso), enquanto o seu "pedaço físico de hardware" (se ele está tentando falar sozinho) está atingindo o host SO sem nada para responder.
O sistema operacional host não deve ter um IP atribuído a essa porta (ou deve ser algo que você não planeja usar). A configuração em ponte significa que o host é o menos envolvido possível com a conectividade, agindo como a porta leva diretamente para o virtual. O sistema operacional no virtual deve ser definido para atribuir esse IP ao NIC que está ligado a essa porta. O restante da conectividade deve ser transparente.