DHCP가 할당 한 IP 주소 별칭


17

eth0에 대한 별칭을 여러 개 만들고 싶지만 고정 IP로 설정하는 대신 DHCP로 주소를 할당했습니다. 이것이 가능합니까?

내가 본 모든 예제는 다음 명령을 사용하여 고정 IP를 할당합니다.

ifconfig eth0:0 192.168.1.11 up

답변:


17

두 DHCP 클라이언트가 다른 MAC 주소를 사용하는 경우에만 가능합니다. 즉, 단일 MAC 주소를 가진 동일한 물리적 네트워크 인터페이스에서 둘 다 실행할 수 없습니다.

해결책은 Linux의 가상 MAC-VLAN 네트워크 인터페이스입니다. MAC-VLAN 인터페이스는 물리적 인터페이스가 지원하지만 다른 MAC 주소를 사용하는 가상 네트워크 인터페이스이며 MAC-VLAN 장치를 만들 때 임의로 생성됩니다.

물리적 인터페이스를 사용하여 MAC-VLAN 인터페이스를 생성하면 물리적 인터페이스와 같은 방식으로 사용합니다. 특별한 경우 물리적 인터페이스에서 하나의 DHCP 클라이언트를 실행하고 다른 하나는 MAC-VLAN 장치에서 실행할 수 있습니다. 그런 다음 각 장치 (실제 및 MAC-VLAN)는 고유 한 IP 주소를 가질 수 있습니다.

새로운 MAC-VLAN 장치 macvlan0에서 생성 될 수있는 eth0실행하여

ip link add dev macvlan0 link eth0 type macvlan

다음을 실행하여 삭제할 수 있습니다

ip link delete dev macvlan0

네트워크 구성 소프트웨어 ( http://code.google.com/p/badvpn/wiki/NCD ) 인 NCD를 사용하여 다음 NCD 프로그램은 eth0( macvlan0macvlan1) 에서 두 개의 MAC-VLAN 장치를 생성 하고 각 장치에서 DHCP를 실행합니다. 획득 한 IP 주소를 할당하십시오. 경로 추가 및 DNS 서버와 같은 다른 작업을 쉽게 수행 할 수 있습니다. 관심이 있다면 NCD 페이지를 읽으십시오.

process lan {
    # Set device.
    var("eth0") dev;

    # Wait for device to appear, set it up, and wait for cable to be plugged in.
    net.backend.waitdevice(dev);
    net.up(dev);
    net.backend.waitlink(dev);

    # Start DHCP's.
    provide("lan-link");
}

process lan_dhcp1 {
    # Wait for link.
    depend("lan-link") linkdep;

    # Choose virtual device name.
    var("macvlan0") vdev;

    # Create virtual MAC-VLAN device.
    list("/sbin/ip", "link", "add", "dev", vdev, "link", linkdep.dev, "type", "macvlan") do;
    list("/sbin/ip", "link", "delete", "dev", vdev) undo;
    run(do, undo);

    # Set virtual device up.
    net.up(vdev);

    # DHCP configuration on virtual device.
    net.ipv4.dhcp(vdev) dhcp;
    ip_in_network(dhcp.addr, "127.0.0.0", "8") test_local;
    ifnot(test_local);

    println(vdev, ": got address ", dhcp.addr);

    # Assign address to virtual device.
    net.ipv4.addr(vdev, dhcp.addr, dhcp.prefix);
}

# This differs from above only in interface name (macvlan1).
process lan_dhcp2 {
    # Wait for link.
    depend("lan-link") linkdep;

    # Choose virtual device name.
    var("macvlan1") vdev;

    # Create virtual MAC-VLAN device.
    list("/sbin/ip", "link", "add", "dev", vdev, "link", linkdep.dev, "type", "macvlan") do;
    list("/sbin/ip", "link", "delete", "dev", vdev) undo;
    run(do, undo);

    # Set virtual device up.
    net.up(vdev);

    # DHCP configuration on virtual device.
    net.ipv4.dhcp(vdev) dhcp;
    ip_in_network(dhcp.addr, "127.0.0.0", "8") test_local;
    ifnot(test_local);

    println(vdev, ": got address ", dhcp.addr);

    # Assign address to virtual device.
    net.ipv4.addr(vdev, dhcp.addr, dhcp.prefix);
}

당신은 될 겁니다 macvlan0macvlan1자체 DHCP 얻은 IP 주소를 각하고 eth0있는 최대하지만 IP 주소를 가지고 있지 않습니다. 또는 하나의 MAC-VLAN 인터페이스 만 만들고 하나의 DHCP 인스턴스를 eth0자체적으로 실행할 수 있습니다.


1
이 문제를 해결하기 위해 죄송하지만 "두 DHCP 클라이언트가 서로 다른 MAC 주소를 사용하는 경우에만 가능합니다"라는 문구가 DHCP 프로토콜 관점에서 올바르지 않습니다. 2011 년에도 DHCP는 여전히 장치의 MAC 주소와 일치하지 않아도되는 클라이언트 ID를 기반으로했습니다. (RFC 2131, 97 년에 출판)
Andre Kostur

0

컴퓨터에 고정 또는 DHCP 할당 IP 주소를 사용하는 것이 좋습니다.

여기에 좋은 튜토리얼이 있습니다 .

여기에는 많은 세부 정보가 포함되어 있으며 DHCP 할당 주소 대신 고정을 사용하는 경우 (예 : DNS 서버 및 게이트웨이에 연결하는 방법) 발생할 수있는 문제를 피할 수 있습니다.


0

DHCP 서버가 인터페이스에 여러 주소를 보낼 수있는 DHCP 구성을 본 적이 없습니다. 프로토콜이 그것을 지원한다고 생각하지 않습니다. 인터페이스에서 여러 IP 주소를 확보 한 후에는 고정 주소로 구성해야합니다.

일부 DHCP 클라이언트에서는 주소가 제공 될 때 고정 주소를 할당 할 수 있습니다. Windows에서 둘 이상을 추가 할 수 있다고 생각하지 않습니다.

모든 고정 주소가 DCHP 주소 범위 밖에 있는지 확인하십시오.


-1

확실하지는 않지만 오픈 소스 라우터가 없으면 정적 IP를 사용하여 원하는 작업을 수행해야합니다. 당신이 원하는 것을 왜하고 싶은지에 대한 충분한 이유가 없다면 IMO는 단지 witrh DHCP를 고수 할 것입니다. 귀하의 질문에서 나는 당신이 원하는 것을 보았습니다. 누군가가 그것을하는 방법을 모른다면 누군가가 더 나은 답변을 줄 때까지 기다렸다가 DHCP를 유지합니다. 1-2 개 이상의 PC를 가지고 있지 않고 네트워크 (프린터 미디어 익스텐더 등)에 아무것도 없으면 정적 IP를 IDK로 사용하지 않고 정적 IP로 이러한 항목을 설정할 수 있는지 여부를 결정합니다. 어쩌면 오픈 소스 라우터를 사용하면 원하는 것을 할 수 있고 Mac 주소를 사용하여 IP를 설정하고 IP를 설정하는 방법으로 고정 IP를 사용하는 것처럼 원하는 작업을 수행 할 수 있습니다 나머지 네트워크는 DHCP를 사용할 수 있습니다. 내가 얇게 한 적이없는 IDK 난 그냥 아이디어를 버리고 그래서 당신을위한 답변이없는 죄송합니다. Bryan이 제기 한 링크는 DHCP 및 정적 IP 문제에 대한 유용한 리소스처럼 보입니다. 또한 오픈 소스 라우터의 경우 Netgear와 D-Link가 더 확실하다고 생각하지만 IMO는이 두 브랜드가 내가 선택하는 브랜드입니다. 나는 소설로 구입 한 이후 개인적으로 Linksys를 좋아하지 않는다. 또한 오픈 소스 라우터의 경우 Netgear와 D-Link가 더 확실하다고 생각하지만 IMO는이 두 브랜드가 내가 선택하는 브랜드입니다. 나는 소설로 구입 한 이후 개인적으로 Linksys를 좋아하지 않는다. 또한 오픈 소스 라우터의 경우 Netgear와 D-Link가 더 확실하다고 생각하지만 IMO는이 두 브랜드가 내가 선택하는 브랜드입니다. 나는 소설로 구입 한 이후 개인적으로 Linksys를 좋아하지 않는다.

또한이 링크를 확인하면 라우터가 지원되는 경우 더 많은 작업을 수행 할 수 있습니다

이 사이트에는 라우터 펌웨어가 있습니다


-1

아니요, 그렇게 할 수 없습니다. DHCP는 하드웨어 주소에 따라 IP를 할당합니다. 각 물리적 인터페이스에는 그 중 하나만 있으므로 DHCP는 물리적 인터페이스에 하나의 IP 만 할당합니다.

인터페이스 IP를 정적으로 설정하는 것이 좋습니다.

당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.