|  | @@ -73,6 +73,10 @@ func (h *DynamicInboundHandler) refresh() error {
 | 
											
												
													
														|  |  
 |  |  
 | 
											
												
													
														|  |  	h.worker2Recycle, h.worker = h.worker, h.worker2Recycle[:0]
 |  |  	h.worker2Recycle, h.worker = h.worker, h.worker2Recycle[:0]
 | 
											
												
													
														|  |  
 |  |  
 | 
											
												
													
														|  | 
 |  | +	address := h.receiverConfig.Listen.AsAddress()
 | 
											
												
													
														|  | 
 |  | +	if address == nil {
 | 
											
												
													
														|  | 
 |  | +		address = v2net.AnyIP
 | 
											
												
													
														|  | 
 |  | +	}
 | 
											
												
													
														|  |  	for i := uint32(0); i < h.receiverConfig.AllocationStrategy.GetConcurrencyValue(); i++ {
 |  |  	for i := uint32(0); i < h.receiverConfig.AllocationStrategy.GetConcurrencyValue(); i++ {
 | 
											
												
													
														|  |  		port := h.allocatePort()
 |  |  		port := h.allocatePort()
 | 
											
												
													
														|  |  		p, err := proxy.CreateInboundHandler(h.ctx, h.proxyConfig)
 |  |  		p, err := proxy.CreateInboundHandler(h.ctx, h.proxyConfig)
 | 
											
										
											
												
													
														|  | @@ -84,7 +88,7 @@ func (h *DynamicInboundHandler) refresh() error {
 | 
											
												
													
														|  |  		if nl.HasNetwork(v2net.Network_TCP) {
 |  |  		if nl.HasNetwork(v2net.Network_TCP) {
 | 
											
												
													
														|  |  			worker := &tcpWorker{
 |  |  			worker := &tcpWorker{
 | 
											
												
													
														|  |  				tag:              h.tag,
 |  |  				tag:              h.tag,
 | 
											
												
													
														|  | -				address:          h.receiverConfig.Listen.AsAddress(),
 |  | 
 | 
											
												
													
														|  | 
 |  | +				address:          address,
 | 
											
												
													
														|  |  				port:             port,
 |  |  				port:             port,
 | 
											
												
													
														|  |  				proxy:            p,
 |  |  				proxy:            p,
 | 
											
												
													
														|  |  				stream:           h.receiverConfig.StreamSettings,
 |  |  				stream:           h.receiverConfig.StreamSettings,
 | 
											
										
											
												
													
														|  | @@ -101,7 +105,7 @@ func (h *DynamicInboundHandler) refresh() error {
 | 
											
												
													
														|  |  			worker := &udpWorker{
 |  |  			worker := &udpWorker{
 | 
											
												
													
														|  |  				tag:          h.tag,
 |  |  				tag:          h.tag,
 | 
											
												
													
														|  |  				proxy:        p,
 |  |  				proxy:        p,
 | 
											
												
													
														|  | -				address:      h.receiverConfig.Listen.AsAddress(),
 |  | 
 | 
											
												
													
														|  | 
 |  | +				address:      address,
 | 
											
												
													
														|  |  				port:         port,
 |  |  				port:         port,
 | 
											
												
													
														|  |  				recvOrigDest: h.receiverConfig.ReceiveOriginalDestination,
 |  |  				recvOrigDest: h.receiverConfig.ReceiveOriginalDestination,
 | 
											
												
													
														|  |  			}
 |  |  			}
 |