In short, the control simply consists of four TextBoxes separated by three Labels containing the decimal separator.
A stripped down example:
    <Border Name="borderMain" BorderThickness="1" BorderBrush="#FFA5ACB2">
        <Grid>
            <Grid.ColumnDefinitions>
                <ColumnDefinition Width="30" />
                <ColumnDefinition Width="3" />
                <ColumnDefinition Width="30" />
                <ColumnDefinition Width="3" />
                <ColumnDefinition Width="30" />
                <ColumnDefinition Width="3" />
                <ColumnDefinition Width="30" />
            </Grid.ColumnDefinitions>             
            <TextBox Grid.Column="0" TabIndex="0" x:Name="TextOctet1" Text="{Binding Path=Octet1 />
            <TextBlock Grid.Column="1" Text="." Width="5" />
            <TextBox Grid.Column="2" TabIndex="1" x:Name="TextOctet2" Text="{Binding Path=Octet2  />
            <TextBlock Grid.Column="3" Text="." Width="5" />
            <TextBox Grid.Column="4" TabIndex="2" x:Name="TextOctet3" Text="{Binding Path=Octet3 />
            <TextBlock Grid.Column="5" Text="." Width="5" />
            <TextBox Grid.Column="6" TabIndex="3" x:Name="TextOctet4" Text="{Binding Path=Octet4 />
        </Grid>
    </Border>
Altogether, it's pretty simple to create. The code behind just needs to handle validation to keep your input in check and also navigation within the control.
Link to Source and binary: http://dl.dropbox.com/u/26136919/IPAddress.7z
