diff --git a/builtin/providers/azurerm/resource_arm_network_interface_card.go b/builtin/providers/azurerm/resource_arm_network_interface_card.go index f2dbbed344cd..f715b2459085 100644 --- a/builtin/providers/azurerm/resource_arm_network_interface_card.go +++ b/builtin/providers/azurerm/resource_arm_network_interface_card.go @@ -252,6 +252,17 @@ func resourceArmNetworkInterfaceRead(d *schema.ResourceData, meta interface{}) e } } + if iface.IPConfigurations != nil && len(*iface.IPConfigurations) > 0 { + privateIPAddresses := make([]*string, 0, len(*iface.IPConfigurations)) + for _, ipConfig := range *iface.IPConfigurations { + privateIPAddresses = append(privateIPAddresses, ipConfig.Properties.PrivateIPAddress) + } + + if err := d.Set("private_ip_addresses", privateIPAddresses); err != nil { + return err + } + } + if iface.VirtualMachine != nil { if *iface.VirtualMachine.ID != "" { d.Set("virtual_machine_id", *iface.VirtualMachine.ID) diff --git a/website/source/docs/providers/azurerm/r/network_interface.html.markdown b/website/source/docs/providers/azurerm/r/network_interface.html.markdown index d2df6b9dbcee..528973ba7a5a 100644 --- a/website/source/docs/providers/azurerm/r/network_interface.html.markdown +++ b/website/source/docs/providers/azurerm/r/network_interface.html.markdown @@ -95,6 +95,7 @@ The following attributes are exported: * `id` - The virtual NetworkConfiguration ID. * `mac_address` - The media access control (MAC) address of the network interface. +* `private_ip_addresses` - The private ip address of the network interface. * `virtual_machine_id` - Reference to a VM with which this NIC has been associated. * `applied_dns_servers` - If the VM that uses this NIC is part of an Availability Set, then this list will have the union of all DNS servers from all NICs that are part of the Availability Set * `internal_fqdn` - Fully qualified DNS name supporting internal communications between VMs in the same VNet